Python pip 重建要求
Python pip rebuild requirements
将 virtualenv
与 pip install
和 pip freeze
结合使用是一种很好的工作方式。您的所有要求都可以在 shell 处得到处理,稍后其他开发人员可以重新构建东西
pip install lib1
pip freeze > requirements.txt
# Do some development
# Oh I need this as well
pip install lib2
pip freeze > requirements.txt
# Another developer comes along
pip install -r requirements.txt
# They can carry on developer
但是,如果您随后想更新您的库变薄很困难(因为您冻结了所有依赖项,而不仅仅是您使用的包)。
有没有一种方法既可以像这样工作又可以在以后更新您的库。
一种方法是使用 pip-tools
并保留一个需求文件(由 pipenv 在内部使用),但这不是很“shelly”
我的工作流程避免了 pip freeze
。它是:
# Oh, I need lib1
echo "lib1~=1.0" >> requirements.txt
pip install -r requirements.txt
# Oh, I need lib2
echo "lib2~=3.0" >> requirements.txt
pip install -r requirements.txt
这样,requirements.txt
只包含我的直接依赖项,所以希望它更容易维护。
将 virtualenv
与 pip install
和 pip freeze
结合使用是一种很好的工作方式。您的所有要求都可以在 shell 处得到处理,稍后其他开发人员可以重新构建东西
pip install lib1
pip freeze > requirements.txt
# Do some development
# Oh I need this as well
pip install lib2
pip freeze > requirements.txt
# Another developer comes along
pip install -r requirements.txt
# They can carry on developer
但是,如果您随后想更新您的库变薄很困难(因为您冻结了所有依赖项,而不仅仅是您使用的包)。
有没有一种方法既可以像这样工作又可以在以后更新您的库。
一种方法是使用 pip-tools
并保留一个需求文件(由 pipenv 在内部使用),但这不是很“shelly”
我的工作流程避免了 pip freeze
。它是:
# Oh, I need lib1
echo "lib1~=1.0" >> requirements.txt
pip install -r requirements.txt
# Oh, I need lib2
echo "lib2~=3.0" >> requirements.txt
pip install -r requirements.txt
这样,requirements.txt
只包含我的直接依赖项,所以希望它更容易维护。