在开发中,经常需要额外的包,我已经安装在我的 venv
中。 ,与我也在 venv
中安装的其他软件包相反,生产中不需要这些软件包。 .生产 requirements.txt
最干净的方法是什么?除了我在开发中只需要的一次(如 mypy
或 autopep8
)之外,它确实具有所有要求
此 answer展示了怎么做,但是方法很麻烦。
最佳答案
我建议使用 pip-compile
,来自 https://pypi.org/project/pip-tools/ .
这让您可以定义一个“in”文件,requirements.in
,它只列出您的顶级依赖项,例如:requirements.in
:
flask
然后你生成 requirements.txt
与 pip-compile
:$ pip-compile --output-file=requirements.txt requirements.in
#
# This file is autogenerated by pip-compile
# To update, run:
#
# pip-compile --output-file=requirements.txt requirements.in
#
click==7.1.2 # via flask
flask==1.1.2 # via -r requirements.in
itsdangerous==1.1.0 # via flask
jinja2==2.11.2 # via flask
markupsafe==1.1.1 # via jinja2
werkzeug==1.0.1 # via flask
然后你可以有单独的.in
/.txt
不同环境的文件,如 test.in
/test.txt
.最后,您可以递归地包含多个需求文件,例如
dev-requirements.txt
:-r requirements.txt
-r test.txt
-r lint.txt
关于python - 创建一个没有开发依赖的requirements.txt,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63836220/