我知道我可以使用pip freeze
来帮助创建我的虚拟环境要求列表,但是我在管理所有不同的软件包时遇到了一些困难。
我希望将一些软件包分开用于开发和生产,因为我使用了很多软件包(其中许多软件包彼此通用),所以拥有生产和开发需求文件是不实用的。我怎样才能更有效地保存我的生产和开发包分开了?
答案 0 :(得分:7)
一点也不困难。
假设您有一个生产要求文件:production.txt
和一个用于开发:development.txt
。创建第三个文件shared.txt
,该文件具有所有共同的依赖项。然后,在每个相应的需求文件中,列出专属于所需环境的依赖项。在development.txt
和production.txt
的头部,使用shared.txt
链接到您的-r shared.txt
。现在,每个文件都会在加载独占依赖项之前加载公共依赖项。
示例:
<强> shared.txt 强>
SharedExamplePackage1
SharedExamplePackage2
SharedExamplePackage3
SharedExamplePackage4
SharedExamplePackage5
<强> development.txt 强>
-r shared.txt
DevExamplePackage1
DevExamplePackage2
<强> production.txt 强>
-r shared.txt
ProductionExamplePackage1
ProductionExamplePackage2
ProductionExamplePackage3
答案 1 :(得分:5)
您可以使用以下方法将一个需求文件包含到另一个:
-r more_requirements.txt
例如,dev-requirements.txt
文件可以包含生产要求以及其他开发包:
-r requirements.txt
mock
tox
(依此类推)