首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pip-compile做了什么?它有什么用?

pip-compile做了什么?它有什么用?
EN

Stack Overflow用户
提问于 2021-03-23 02:13:01
回答 1查看 7.9K关注 0票数 15

我是编程和python的初学者。我阅读了pip-tools文档中的pip编译定义,但我不能理解。有人能给我解释一下吗?更具体地说,编译requirements.in生成requirements.txt意味着什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-27 15:11:50

您希望能够锁定Python代码在requirements.txt文件中所依赖的所有包的版本。您希望该文件不仅包含代码直接导入的直接依赖项的版本,还包括所有传递依赖项的版本,就像well...that一样,即直接依赖的模块本身所依赖的模块的版本。

那么问题是,你是否维护了"requirements.txt“的内容?您可以使用pip freeze > requirements.txt,但这太麻烦了。它不取决于应用程序的直接依赖关系的清晰列表,而是取决于创建时环境中的内容。您真正想要的是有一个文件,在其中列出应用程序的直接依赖项,以及每个依赖项的版本,然后以某种方式从该列表中生成适当的requirements.txt文件,以便它包含这些直接依赖项的确切版本,以及仅包含这些直接依赖项所需的传递依赖项的版本。

requirements.in文件和pip-compile一起为您提供了所需的行为。在requirements.in中,您只列出应用程序的直接依赖项。然后对该文件运行pip-compile以生成requirements.txt。编译过程将生成您想要的内容...一个包含requirements.in中列出的模块和这些模块的传递依赖项的文件。

票数 28
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66751657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档