1. ホーム
  2. python

[解決済み] pip install -e` の使用例について教えてください。

2022-03-08 13:27:51

質問

私はペットのプロジェクトの1つで作業する必要があるとき、いつも通りリポジトリをクローンするだけです( git clone <url> を更新し、必要な部分を編集し、テストを実行し、そして setup.py バージョン、コミット、プッシュ、パッケージのビルド、PyPIへのアップロードを行います。

を使うメリットは何ですか? pip install -e ? 使用した方が良いですか?どのようにワークフローを改善するのでしょうか?

どのように解決するのですか?

私は pip install -e 私はよくやるのですが、製品と依存関係を同時に開発する場合に非常に便利です。

あなたは多くのクライアントのためにDjangoを使用してウェブサイトを構築し、また社内でDjangoアプリの 場所 多くのプロジェクトで再利用しているため、pip で利用できるようにし、バージョンアップしています。

プロジェクトで作業する場合、通常通り必要なものをインストールすることで 場所 をサイトパッケージに追加します。

しかし、すぐに次のことに気がつきます。 ロケーション は、もう少し改良が必要なようです。

のコピーを取ってくるわけです。 場所 レポジトリを作成し、変更を開始します。もちろん、これらの変更を Django プロジェクトのコンテキストでテストする必要があります。

プロジェクトに入り、タイプするだけです。

pip install -e /path/to/locations/repo

これは、site-packages にあるディレクトリをシンボリックリンクで上書きし の場所 リポジトリにあるコードの変更が自動的に反映されることを意味します。

シンボリックリンクは、ディレクトリ内の現在のファイルを参照します。つまり、ブランチを切り替えて変更を確認したり、別のことを試したりすることができます。

別の方法としては、新しいバージョンを作成し、それをpipにプッシュし、忘れ物がないことを祈ることになります。このような社内アプリがたくさんある場合、これはすぐに実行不可能になります。