特定の仮想環境で実行されたすべてのpip
コマンドと、インストール/更新/削除されたパッケージバージョンの記録を残したいと思います。それを行う簡単な方法はありますか?特定の仮想環境ですべてのpipコマンドをログに記録しますか?
また可能であれば、requirements.txt
(--install-option
などを含む)を自分の仮想環境の状態からどうやって得るのですか?おそらく、ただの依存関係だけが存在する必要があります。
特定の仮想環境で実行されたすべてのpip
コマンドと、インストール/更新/削除されたパッケージバージョンの記録を残したいと思います。それを行う簡単な方法はありますか?特定の仮想環境ですべてのpipコマンドをログに記録しますか?
また可能であれば、requirements.txt
(--install-option
などを含む)を自分の仮想環境の状態からどうやって得るのですか?おそらく、ただの依存関係だけが存在する必要があります。
編集__main__
セグメントの先頭にこれを挿入するpip
スクリプト:
if __name__ == '__main__':
import os
env_dir = os.environ['VIRTUAL_ENV']
with open(os.path.join(env_dir, 'pip_log.txt'), 'a') as f:
f.write(' '.join(sys.argv[1:]) + '\n')
これはvirtualenvのディレクトリにpip_log.txt
にピップするすべてのコールを記録します。 Pip
は、virtualenvのbinフォルダーのactivateスクリプトの横にあります。
すべてのコマンドの履歴を表示するにはhistoryコマンドを使用し、ファイルに出力してpipをgrepします。 上記のコメントと同様です。
POSIXシステムを使用している場合、 'pip install foo bar baz>&pip_log.txt'は出力をログに記録します。 – Greg
要求ファイルと 'pip'は望ましい状態システムです。これは変更を無関係にします。要件ファイルのみを使用する(手動変更なし)ことを検討し、その履歴を保持することを検討する必要があります。 –