如何pip冻结源码包
How to pip freeze source package
我正在学习如何在这里使用 venv:https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/#installing-from-source
它说我可以通过以下方式安装源码包:
python3 -m pip install .
这行得通,但现在如果我这样做 pip freeze
然后我看到:
my-package @ file:///Users/joesmith/my-package
问题是,如果我将它导出到 requirements.txt
并尝试在另一台机器上安装这个环境,那么它将无法工作,因为源路径明显改变了。
像我一样在本地使用源包但之后又将其导出以便其他人可以在另一台机器上重新创建 environment/run 代码的正确方法是什么?
您将从 PyPI 而不是从源安装包。
即pip install requests
通过这种方式,其他开发人员也可以轻松地运行您的项目。
Pip 像 git 一样支持 VCS。例如,您可以将代码上传到 git(例如 Github、Gitlab、..),然后使用 requirements.txt。像这样:
git+http://git.example.com/MyProject#egg=MyProject
我正在学习如何在这里使用 venv:https://packaging.python.org/guides/installing-using-pip-and-virtual-environments/#installing-from-source
它说我可以通过以下方式安装源码包:
python3 -m pip install .
这行得通,但现在如果我这样做 pip freeze
然后我看到:
my-package @ file:///Users/joesmith/my-package
问题是,如果我将它导出到 requirements.txt
并尝试在另一台机器上安装这个环境,那么它将无法工作,因为源路径明显改变了。
像我一样在本地使用源包但之后又将其导出以便其他人可以在另一台机器上重新创建 environment/run 代码的正确方法是什么?
您将从 PyPI 而不是从源安装包。
即pip install requests
通过这种方式,其他开发人员也可以轻松地运行您的项目。
Pip 像 git 一样支持 VCS。例如,您可以将代码上传到 git(例如 Github、Gitlab、..),然后使用 requirements.txt。像这样:
git+http://git.example.com/MyProject#egg=MyProject