RubyのバンドラーまたはノードのNpmについてある程度理解している場合、これらのファイルの背後にある概念は、他の既存のツールと同様でシンプルです。Pipenv
これらの目標を達成するためにPipfileおよびPipfile.lockファイルを使用するパッケージおよび仮想環境管理ツールです。
Pipenvは、1つのデフォルトの標準的な方法で仮想環境を処理します(アクティブ化と非アクティブ化は不要です)。以下、始めるためのいくつかの基本事項、詳細についてはpipenvのWebサイトを参照してください。
入門
プロジェクトフォルダータイプでpipenvの使用を開始するのは簡単です...
$ pipenv install
...すでにrequirements.txt
ファイルがある場合Pipfile
は、要件と仮想環境フォルダーを含むPipfile
ファイルを生成します。それ以外の場合は、空のファイルを生成します。インストールしたものが気に入らなかった、または気が変わった場合は、次のように入力してください...
$ pipenv uninstall <package>
...そして、あなたは行ってもいいです。pipenvがすでに生成している仮想環境をアクティブ化するには、次のようにします...
$ pipenv shell
...仮想環境がアクティブになります。環境から離れるには...
$ exit
...そして、元のターミナルセッションに戻ります。
ピップファイル
Pipfileのファイルは、両方の開発と実行に、Pythonアプリケーションやライブラリのパッケージ要件を指定することを意図しています。あなたは単に使用してパッケージをインストールすることができます...
$ pipenv install flask
...展開と実行の依存関係として、または...を使用して追加されます
$ pipenv install --dev pytest
...そして、それは開発時間の依存関係として使用されます。次のように、ファイルの構文は非常に単純です。
[[source]] # Here goes your package sources (where you are downloading your packages from).
url = "https://pypi.python.org/simple"
verify_ssl = true
name = "pypi"
[packages] # Here goes your package requirements for running the application and its versions (which packages you will use when running the application).
requests = "*"
flask = "*"
pandas = "*"
[dev-packages] # Here goes your package requirements for developing the application and its versions (which packaes you will use when developing the application)
pylint = "*"
wheel = "*"
[requires] # Here goes your required Python version.
python_version = "3.6"
Pipfile.lock
Pipfile.lockは、内のパッケージの存在に基づいて、指定することを意図しているPipfile自動的に相互依存のパッケージをアップグレードして、プロジェクトの依存関係ツリーを破壊するリスクを回避、これらの特定のバージョンを使用する必要があります。
次を使用して、現在インストールされているパッケージをロックできます...
$ pipenv lock
...そして、ツールは仮想環境フォルダーを検索して、現在インストールされているバージョンに基づいて、自動的にロックファイルを生成します。ファイルの構文はPipfileほど明確ではないため、簡潔にするために、ここでは表示しません。
Gemfile
とGemfile.lock
Rubyの世界から:.lock
ファイルには、各依存関係のための特定のバージョンを持っています。その拡張子のないものは、既知の制御人間バージョンのみを持っています。そうは言っても、まだ発展途上で、明確に定義されていない標準化から遠く離れた何かについての説明を求めるのは、おそらく時期尚早です。