14

これまでのところ、python パッケージのインストールを処理する最も簡単な方法は、ソース管理システムからソースをチェックアウトし、python dist-packages フォルダーにシンボリック リンクを追加することでした。

明らかに、ソース管理はダウングレード、任意のブランチへのアップグレード、タグへの完全な制御を提供するため、非常にうまく機能します。

パッケージインストーラー (easy_install または pip またはその他) のいずれかを使用する方法はありますか? 同じことを達成できます。

easy_install は tar.gz を取得し、python2.6 の dist-packages フォルダーにインストールされる setup.py インストールを使用してそれらをインストールします。それを構成する方法はありますか、または代わりにソース バージョン管理システム (SVN/GIT/Hg/Bzr) を使用するように pip します。

4

4 に答える 4

26

pipを使用すると、これは非常に簡単です。例えば:

pip install -e hg+http://bitbucket.org/andrewgodwin/south/#egg=South

Pipは自動的にソースリポジトリのクローンを作成し、「setup.pydevelop」を実行して環境(できればvirtualenv)にインストールします。Git、Subversion、Bazaar、Mercurialがすべてサポートされています。

次に、「pipfreeze」を実行すると、現在インストールされているパッケージのリストが正確なバージョン(開発インストールの場合は、VCSからの正確なリビジョンを含む)とともに出力されます。これを要件ファイルに直接入れて、後で実行することができます

pip install -r requirements.txt

同じパッケージのセットをまったく同じバージョンでインストールします。

于 2009-10-26T16:08:10.317 に答える
11

パッケージのソースディストリビューション(「setup.py」が含まれているもの)をダウンロードまたはチェックアウトすると、パッケージが「setuptools」(easy_installにも電力を供給)に基づいている場合は、その中に移動できます。ディレクトリと言う:

$ python setup.py develop

また、dist-packagesに適切なシンボリックリンクが作成されるため、ソースディストリビューションの.pyファイルは、個別にインストールされるコピーではなく、インポートされるファイルになります(これは、「setup.pyinstall」が行うことです。個別のコピーを作成します。ソースコードを編集して変更を試みるときに、すぐに変更しないでください)。

他の回答が示すように、詳細については「setuptools」のドキュメントを読んでみてください。「setup.pydevelop」は本当に便利な機能です!これをvirtualenvと組み合わせて使用​​してみてください。そうすれば、一時的に開発しているパッケージでシステム全体のPythonを台無しにすることなく、簡単に「setup.py開発」を行うことができます。

http://pypi.python.org/pypi/virtualenv
于 2009-06-23T17:32:22.663 に答える
4

easy_install は、特定のバージョンのダウンロードをサポートしています。例えば:

easy_install python-dateutil==1.4.0

v1.4 がインストールされますが、バージョンが指定されていない場合は最新バージョン 1.4.1 が選択されます。

svn チェックアウトのサポートもありますが、それを使用しても、手動バージョンから多くの利点は得られません。上記の詳細については、マニュアルを参照してください。

問題のパッケージを開発していない限り、特定のブランチに切り替えることができることはめったに役に立ちません。また、通常、それらをサイトパッケージにインストールすることはお勧めできません。

于 2009-06-23T18:35:33.457 に答える
0

easy_installは、ソースツリーのURLも受け入れます。少なくともソースがSubversionにある場合は機能します。

于 2009-09-18T20:39:07.477 に答える