uv / uvx
名称、版本与用途
- 名称:uv、uvx
- 当前版本:0.11.6
- 路径:
~/.local/bin/uv、~/.local/bin/uvx - 用途:Python 项目、依赖、锁文件、Python 版本和 CLI 工具管理。
uvx等价于uv tool run,适合一次性运行 Python CLI。
基本语法(Synopsis)
uv [GLOBAL_OPTIONS] <COMMAND> [ARGS]
uvx [OPTIONS] TOOL [TOOL_ARGS][] 表示可选项,... 表示可重复;大写名称表示需要替换的参数。
当前安装与更新
当前来自本地 uv-offline bundle 的官方预编译二进制,不属于 dpkg。
当前构建支持自更新:
uv self update --dry-run
uv self update离线环境可重新生成 uv bundle,校验官方 release 后替换 uv 和
uvx。如果安装方式禁用了 self-update,应使用对应包管理器或 bundle 更新。
当前 uv 工具
- Cookiecutter 2.7.1
- git-filter-repo 2.47.0
- Ruff 0.15.0
基本功能与推荐用法
uv init my-project
uv add requests
uv add --dev pytest ruff
uv sync
uv lock
uv run pytest
uv python install 3.13
uvx ruff check .
uv tool install cookiecutter
uv tool upgrade --all选择原则:
- 项目命令需要访问项目环境:
uv run。 - 偶尔运行一个独立 CLI:
uvx。 - 需要长期保留命令:
uv tool install。 - 项目依赖变更使用
uv add/remove,并提交pyproject.toml与uv.lock。
不要使用系统 pip 修改 Ubuntu 管理的 Python。
示例中的选项、参数与子命令
本表解释本页示例实际出现的选项、参数、子命令及必要的辅助命令语法。
| 语法元素 | 含义 |
|---|---|
self update | 更新 uv 自身。 |
--dry-run | 只展示将执行的操作,不实际修改。 |
init PATH | 在 PATH 初始化项目。 |
add PACKAGE | 向项目添加依赖。 |
--dev | 把依赖加入开发依赖组。 |
sync | 按锁文件同步项目环境。 |
lock | 生成或更新锁文件。 |
run COMMAND | 在项目环境中运行命令。 |
python install VERSION | 安装由 uv 管理的 Python 版本。 |
uvx TOOL | 在临时隔离环境运行 Python CLI 工具。 |
tool install TOOL | 持久安装 Python CLI 工具。 |
tool upgrade TOOL | 升级已安装工具。 |
--all | 对全部适用对象执行操作。 |