【问题标题】:Pip requirements file: do not install dependenciespip 需求文件:不安装依赖项
【发布时间】:2015-04-11 12:36:55
【问题描述】:

我正在使用一些 github django 包的前沿版本,这些包具有我不想安装的依赖项。

在开发中,在我自己的计算机上,我可以在命令行中使用pip install 并使用--no-dependencies 标志。但是,我的测试和生产环境需要一个需求文件来进行部署。不幸的是,--no-dependencies 标志不能在需求文件中使用,如下所述:https://pip.pypa.io/en/latest/reference/pip_install.html#requirements-file-format

有没有办法告诉 pip 在使用需求文件时不要安装依赖项?

【问题讨论】:

  • 依赖意味着包作者说的是使用包所必需的。我怀疑大多数包管理器会让您以损坏的方式安装包。也许它适用于您的用例,但用户可能会安装您的包并最终导致另一个包的安装损坏。如果其他包并不真正需要这些依赖项(即:它们是可选的),您应该联系包维护者并让他们知道改为extras
  • 所以您想安装软件,而不安装软件运行所需的必要条件?我建议不要。
  • 看起来 Pip 应该按照与需求文件中列出的顺序相同的顺序安装包,但是“这不是承诺”(pip.pypa.io/en/latest/reference/…)。在我的特殊情况下,这做得对,但这可能不是所有人都能接受的解决方案......
  • @Peter:我正在使用一个需要 Django 1.6 但与 Django 1.7 配合使用的包。到目前为止,我的项目运行良好,所以我决定绕过这个给定的要求。
  • 将需求文件更改为 1.7。

标签: python pip requirements.txt


【解决方案1】:

我通过使用两个需求文件并调用 pip 两次来解决这个问题。

pip install -r requirements.txt
pip install --no-deps -r no_deps.txt

【讨论】:

    猜你喜欢
    • 2018-09-27
    • 2016-08-21
    • 2012-05-07
    • 2011-01-20
    • 2013-11-20
    • 2011-04-09
    • 2015-04-01
    • 2021-05-29
    • 2023-04-03
    相关资源
    最近更新 更多