【问题标题】:Pip ignores changed requirementPip 忽略更改的要求
【发布时间】:2017-02-11 16:46:13
【问题描述】:

正在开发的包的 requirements.txt 文件包含以下内容:

git://git.gitsomewhere.com/MyProject.git@da39a3aaae6b4b0d3255bf5595601890afd80709#egg=MyProject

它的安装方式是

pip install -r requirements.txt

当没有以前的版本时。

但是,当提交哈希更改时,pip 不会更新依赖项(高兴地报告该要求已经满足)。

有什么方法可以可靠地使 pip 获取正确的版本,由提交哈希指定(并且可能通过获取的包的 setup.py 中的版本进一步确认)?

pip 8.1.2,记录在案。

【问题讨论】:

    标签: python python-2.7 pip requirements.txt


    【解决方案1】:

    可以通过在依赖行前面加上-e来添加可编辑项目而不是安装到virtualenv中:

    -e git://git.gitsomewhere.com/MyProject.git@da39a3aaae6b4b0d3255bf5595601890afd80709#egg=MyProject
    

    在某些情况下可能更可取的另一种方法是添加(直接或添加到更方便的路径中):

    -e MyProject
    

    并作为 git 子模块处理。 (另见Including Git submodules on pythonpath when using virtualenv

    另一种方式:

    ./MyProject
    

    请注意,以前的解决方案可能会受到旧安装的影响。

    注意,pip install -r requirements.txt 将更新安装只有在 setup.py 中的版本 更改

    在使用一种或另一种解决方案之前,请检查它如何(以及是否)从以前安装的包中恢复。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-17
      • 1970-01-01
      • 2014-06-06
      • 2012-09-13
      • 1970-01-01
      • 2014-02-23
      • 1970-01-01
      相关资源
      最近更新 更多