🚀

【Python仮想環境管理】uv コマンド&引数一覧と機能概要

に公開

今までずっとpoetry+pyenvでpythonの仮想環境管理してましたが、uvがめちゃくちゃ高速&簡単なので勉強ついでにコマンドまとめておきます

プロジェクト管理

コマンド 説明
uv init 新しいPythonプロジェクトを初期化し、pyproject.tomlを作成します。
uv add 依存パッケージをプロジェクトに追加し、pyproject.tomlを更新します。
uv remove プロジェクトから依存パッケージを削除します。
uv sync pyproject.tomluv.lockに基づいて環境を同期します。
uv lock 依存関係をロックし、uv.lockファイルを生成または更新します。
uv export 依存関係をrequirements.txtなどの形式でエクスポートします。
uv tree 依存関係のツリー構造を表示します。

仮想環境とPythonバージョン管理

コマンド 説明
uv venv 仮想環境を作成します。
uv python install 指定したバージョンのPythonをインストールします。
uv python list インストール済みのPythonバージョンを一覧表示します。
uv python uninstall 指定したPythonバージョンをアンインストールします。

スクリプトとツールの実行

コマンド 説明
uv run スクリプトやコマンドを仮想環境内で実行します。
uv tool install CLIツールをインストールします(例:uv tool install ruff)。
uv tool run / uvx CLIツールを一時的な環境で実行します(例:uvx cowsay)。
uv tool list インストール済みのツールを一覧表示します。

pip互換インターフェース

コマンド 説明
uv pip install パッケージをインストールします(pip installと同様)。
uv pip uninstall パッケージをアンインストールします。
uv pip list インストール済みのパッケージを一覧表示します。
uv pip freeze インストール済みのパッケージとバージョンを表示します。
uv pip check 依存関係の整合性をチェックします。

ビルドと公開

コマンド 説明
uv build パッケージをビルドします(例:wheelやsdistの作成)。
uv publish ビルドしたパッケージをPyPIなどに公開します。

キャッシュと自己管理

コマンド 説明
uv cache clean キャッシュをクリアします。
uv cache dir キャッシュディレクトリのパスを表示します。
uv self update uv自体を最新バージョンに更新します。
uv version uvのバージョン情報を表示します。

🛠️ uv の特有オプション一覧(Markdown形式)

オプション 用途・機能説明 補足事項
--directory <dir> 作業ディレクトリを一時的に変更してコマンドを実行 スクリプトの相対パスや依存解決の起点になる。
--project <dir> 指定ディレクトリ内の pyproject.toml を使ってプロジェクトとして扱う 通常の cd に相当。--directory より プロジェクトベース 寄り。
--config-file <path> 指定の uv.toml を使用 ユーザー/グローバル設定より優先される。
--with <pkg> 一時的にパッケージを追加してコマンドを実行 依存に追加されない一時的実行(例:uv run --with requests script.py
--with-requirements <file> 一時的に requirements.txt を読み込んでパッケージ追加 --with のファイル版。
--allow-insecure-host <url> 証明書が無効なホストへの接続を許可 本番では非推奨。
--cache-dir <path> キャッシュディレクトリの保存場所を指定 通常は ~/.cache/uv に保存。
`--python <version path>` 使用する Python のバージョンや実行ファイルパスを指定 uv run --python 3.11uv run --python /usr/bin/python3.10 など。
--no-python-downloads 自動で Python をダウンロードしない オフラインや限定環境向け。

Discussion