astral-sh/uv
An extremely fast Python package and project manager, written in Rust.
github.com · astral-sh/uv
astral-sh/uv
An extremely fast Python package and project manager, written in Rust.
uv 是由 Astral(Ruff 与 ty 的出品方)用 Rust 编写的 Python 包与项目管理器,目标是用一个工具替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv 等常见组件。它提供项目级 lockfile、工作区、脚本内联依赖、Python 版本管理与 pip 兼容接口,在缓存命中场景下安装速度可比 pip 快 10–100 倍,并支持 macOS、Linux 与 Windows。
uv init / add / sync / lock)、脚本运行、CLI 工具(uvx)、Python 版本安装与切换uv add --script 声明依赖,uv run 自动创建隔离环境uv pip compile / sync / venv 等命令可渐进迁移现有 pip 工作流uv 把「装 Python、建虚拟环境、锁依赖、跑脚本、装 CLI 工具」收敛到一个二进制里,显著减少工具碎片化与等待时间。对已有 pip/requirements 流程的团队,可通过 uv pip 接口无痛提速;对新项目,可直接采用 pyproject.toml + uv.lock 的现代项目管理方式。全局缓存还能节省磁盘,适合多项目并行开发。
uv pip 迁移路径。uv tool install / uvx 提供类似的一次性/持久化工具运行能力,并与其他 uv 子命令共享缓存。macOS / Linux(推荐):
curl -LsSf https://astral.sh/uv/install.sh | shWindows:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"通过 PyPI:
pip install uv# 或pipx install uv安装后可用 uv self update 自更新。更多方式见 官方安装文档。
新建项目:
uv init myprojectcd myprojectuv add ruffuv run ruff check在现有 requirements 流程中试用:
uv venvsource .venv/bin/activate # Windows: .venv\Scripts\activateuv pip compile requirements.in -o requirements.txtuv pip sync requirements.txt执行 uv --version 应输出版本号。uv run python --version 或 uvx cowsay hello 能正常完成即表示核心路径可用。项目管理场景下 uv lock 与 uv sync 无报错即表示环境与 lockfile 一致。