AX 爱鲜报

uv

uv 是 Astral 用 Rust 编写的极速 Python 包与项目管理器,可替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv 等工具,速度比 pip 快 10-100 倍,支持项目锁文件、脚本依赖、Python 版本管理与 pip 兼容接口。

过去 7 天收获 1 颗 Star

爱鲜报评分

0.0

0 人评分

开源 · Apache-2.0 #Python #Rust #CLI #包管理 #依赖管理

91k

星数

否

中文

Rust

主语言

是

活跃

609

贡献者

人工分析

EDITORIAL

推荐理由

uv 由 Ruff 团队打造,用 Rust 重写 Python 包管理全链路,安装与解析速度提升一个数量级,且提供 pip 兼容命令,迁移成本低。它把虚拟环境、依赖锁定、Python 版本、工具运行整合进单一二进制,适合希望统一并加速 Python 工程流程的团队。

适用场景

  • Python 项目依赖管理与锁文件
  • CI/CD 中加速依赖安装
  • 单文件脚本的依赖声明与运行
  • 多 Python 版本切换与安装
  • 替代 pipx 运行命令行工具

优点

  • Rust 实现,安装与解析速度远超 pip
  • 单一工具覆盖 pip、poetry、pyenv、pipx 等
  • 提供 pip 兼容接口,迁移平滑
  • 全局缓存去重,节省磁盘空间
  • 跨 macOS、Linux、Windows,安装简单

缺点

  • 较新工具,部分边缘场景行为与 pip 存在差异
  • 团队需统一工作流,避免与旧工具混用
  • 文档以英文为主,中文资料相对较少
上手难度 入门

uv 是什么

uv 是由 Astral(Ruff 的作者团队)用 Rust 编写的 Python 包与项目管理器,目标是成为 Python 工程的一站式工具。官方称其比 pip 快 10-100 倍,并可在单一工具中替代 pip、pip-tools、pipx、poetry、pyenv、virtualenv、twine 等。

核心能力

  • 项目管理:uv init 初始化项目,uv add 添加依赖,uv lock 生成通用锁文件,uv sync 同步环境。
  • 脚本运行:支持在单文件脚本中声明内联依赖,uv run 自动创建隔离环境执行。
  • 工具运行:uvx(即 uv tool run)在临时环境中运行 Python 命令行工具,uv tool install 可全局安装。
  • Python 版本管理:uv python install 安装多个 Python 版本,uv python pin 固定项目版本。
  • pip 兼容接口:uv pip compile、uv pip sync、uv venv 等命令可直接替换现有工作流。

快速体验

# 初始化项目并添加依赖
uv init example
cd example
uv add ruff

# 运行工具
uvx pycowsay 'hello world!'

# 使用 pip 兼容接口
uv pip compile requirements.in --universal --output-file requirements.txt
uv pip sync requirements.txt

适用与注意

uv 适合新项目从零搭建,也适合在 CI 中替换 pip 以显著缩短安装时间。由于它仍在快速迭代,团队应统一工具链,避免与旧工具混用导致环境不一致。

项目采用 Apache-2.0 协议,支持 macOS、Linux 与 Windows,可通过独立安装脚本或 PyPI 安装。

评论

登录后才可评论与评分

0 条评论

  • 暂无评论,来写第一条吧。