为什么在 requirements.txt 中包含依赖项的依赖项是最佳实践?

Lud*_*udo 3 python dependencies pip python-3.x requirements.txt

我明白在许多情况下,明确说明我们正在使用的依赖版本很重要,因此这也适用于嵌套依赖。

然而,当我们决定删除一个依赖项并且需要使用类似 pideptree 的东西来确定它是否有任何我们也安装的自己的依赖项时,它变得非常混乱,另外还要确保这些嵌套的依赖项没有被我们的其他依赖项使用一级依赖。

假设我们不需要冻结我们的依赖版本,包含嵌套依赖而不是让 pip 为我们处理它有什么好处?

phd*_*phd 5

人们实际上不会这样做。requirements.txt确实应该列出没有嵌套依赖项的依赖项。固定的依赖项通常放在另一个文件中:

pip freeze > requirements-freeze.txt
Run Code Online (Sandbox Code Playgroud)

如果人们在requirements.txt其中固定依赖项,那不完全是错误,但肯定不是最佳实践。