最終更新:2026-02-27 (金) 06:34:22 (9d)
uv/パッケージ管理
https://docs.astral.sh/uv/guides/projects/
uv init
- Create a new project
- Gitのリポジトリの作成
- uv/プロジェクト/.gitignore
- uv/プロジェクト/.python-version?
- uv/プロジェクト/main.py
- uv/プロジェクト/pyproject.toml
- uv/プロジェクト/README.md?
uv init後にuv run, uv sync, or uv lockなどを実行すると生成されるファイル
- uv/プロジェクト/.venv
- uv/プロジェクト/uv.lock (依存関係が解決されてインストールされたパッケージの詳細情報)
uv add
- pyproject.tomlのdependenciesに追加
- 仮想環境がない場合は作成
- uv lockで依存関係を解決してuv.lockに保存
- uv syncでuv.lockのパッケージをインストール
確認
uv addで入れたもの
- pyproject.tomlのdependenciesを見る
実際に解決・固定された全依存関係
更新
uv lock --upgrade
- ロックされたパッケージバージョンのアップグレード
- すべてのパッケージをアップグレード
uv lock --upgrade-package {requests}
- ロックファイルの残りの部分をそのままにしながら、指定されたパッケージを最新の互換性のあるバージョンに更新
lockとsync
- uvではロックと同期は自動的に行われる
uv lock
- プロジェクトの依存関係をロックファイルに解決するプロセス
- uv/プロジェクト/uv.lockの更新
- 実際のインストールはuv sync
uv sync
- ロックファイル(uv/プロジェクト/uv.lock)のパッケージをvenv環境にインストール
更新
確認あり
uv lock --upgrade uv.lockを更新 uv sync venvを更新
確認なし
uv sync -U uv.lockを更新してvenvを更新
動作
- uv runすると自動でロック・同期される
- uv addしただけだとpyproject.tomlは更新されるがuv.lockは古いままになる
メモ
- uv tree?
uv pip?
- 仮想環境に直接インストール

