我来自 2020 年的这个问题,我完全迷失了。我能收集到的是,官方
poetry
文档的建议是将 poetry.lock
提交到存储库,但有许多开发人员警告不要这样做,而只提交 pyproject.toml
。
我只想构建一个可通过
pip install xxx
安装的 Python 包。对于今天正确的方法是什么有共识吗?我应该只提交其中一个文件还是同时提交两个文件?
将 Python 项目提交到存储库时,请根据您的项目类型考虑以下方法:
图书馆
提交 pyproject.toml 以允许用户灵活地解决依赖关系。这确保您的库可以轻松地与其他项目集成,而不会导致依赖冲突。
应用
提交 pyproject.toml 和诗歌.lock 以确保所有开发和部署阶段的环境一致。这可以锁定所使用的依赖项的确切版本,从而降低环境之间出现差异的风险。
可选:使用诗歌生成requirements.txt
如果需要支持使用requirements.txt的环境,可以使用Poetry生成该文件。虽然您通常不会为 Poetry 管理的项目提交requirements.txt,但您可能会这样做是为了与需要它的部署系统兼容。在这种情况下,将生成的requirements.txt与应用程序的pyproject.toml一起提交,但对于库,您可能希望避免提交它以保持依赖关系解析的灵活性。