pip:从远程git仓库拉取更新

39

几周前我从GitHub安装了scikit-learn

pip install git+git://github.com/scikit-learn/scikit-learn@master

我访问了GitHub,自那时起主分支已经发生了几个更改。

我该如何更新本地安装的 scikit-learn

我尝试过 pip install scikit-learn --upgrade 但是得到了以下信息:

Requirement already up-to-date
Cleaning up ...
4个回答

31

pip 在 Python 包索引中搜索库。你的版本比那里最新的还要新,所以 pip 不会更新它。

你需要从 Git 重新安装:

$ pip install git+git://github.com/scikit-learn/scikit-learn@main

谢谢。我猜我需要先卸载这个包,对吧?奇怪的是,pip 原则上应该记得我最初是从 git 存储库获取的,对吧?这背后是否有设计决策? - Amelio Vazquez-Reina
5
ChatGPT:Pip只会升级软件包。 - Blender
6
无需卸载该软件包,它会自动进行卸载。 - Alexis Métaireau
13
升级时不需要使用-U标志吗? - user25064
4
我建议您强烈卸载后重新安装。我发现一个新提交的文件没有出现,浪费了很多时间四处查找。 - Wtower
显示剩余2条评论

22

你需要安装来自Github或本地的版本。

我通常的做法是在本地使用git克隆存储库,然后运行python setup.py install或者python setup.py develop来确保使用的是所需版本。

否则,重新发出带有升级标志的第一次执行的命令即可解决问题:

pip install --upgrade git+git://github.com/scikit-learn/scikit-learn@main

13
我的解决方法是使用--force-reinstall参数: pip install --force-reinstall --no-deps git+git://github.com/scikit-learn/scikit-learn@main 使用--no-deps参数避免重新安装所有依赖项。

0

据我所知,Pip是基于pypi进行安装的。如果你想升级到目前托管在Github上的版本,那么你需要使用来自Github的URL。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接