我很困惑。我有一个工作pip install
命令(意思是:它从Github安装了一个适用于我的库版本),我有一个不工作的(意思是:它安装了一个没有的库版本为我工作)将该要求放入requirements.txt
文件的方式。
更具体:
如果我在命令行上输入
pip install -e 'git://github.com/mozilla/elasticutils.git#egg=elasticutils'
然后测试我的程序,一切正常。如果我将此行放入requirements.txt
:
-e git://github.com/mozilla/elasticutils.git#egg=elasticutils
然后运行我的程序,它打破了一个错误(只有库应该已经改变,所以我猜这个库中的两个版本之间已经改变了。)
但两个版本不应该完全相同吗? (当然,我已尽力使用pip uninstall elasticutils
再次在两个测试之间删除已安装的库版本。)
欢迎任何信息......
答案 0 :(得分:1)
是的,正如我在上面的评论中所写,当requirements.txt
状态与包中的依赖关系不同时,似乎存在依赖性覆盖。在我的情况下,手动安装包也安装了({1}}的(较新)版本,即1.2.0。使用始终安装的requests
(由于覆盖)requirements.txt
的版本0.14.2。
通过更新requests
中的requests
版本来解决问题: - )
答案 1 :(得分:0)
嗯,我不知道到底有什么区别,但是当我想从requirements.txt安装一些东西时,它是一个git repo,我会做以下几行:
#git+https://github.com/user/package_name.git
然后安装如下:
pip install -r requirements.txt