我想记录在给定虚拟环境中执行的所有pip
命令以及已安装/更新/删除的软件包版本。有没有一种简单的方法可以做到这一点?
或者,如果可能的话,如何从我的虚拟环境状态中获取requirements.txt
(包括--install-option
等)?据推测,只有直接的依赖关系需要存在。
答案 0 :(得分:1)
修改pip
脚本,将其插入__main__
段的开头:
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')
这会将每次调用pip记录到virtualenv目录中的pip_log.txt
。 Pip
位于virtualenv的bin文件夹中,位于激活脚本旁边。
答案 1 :(得分:0)
您可以使用history命令查看所有命令的历史记录,然后使用输出到文件来grep for pip。 与上面的评论相似。