如果我这样做:
pip install -e git://github.com/nimbis/django.git#egg=Django-dev
然后pip将从该存储库(1.4.1-patched
)获取默认分支并安装它,正如您在src目录中看到的那样:
如果远程分支的名称仍与主分支相同(默认值为1.1),则仍使用主分支。在
$ pip install -e git://github.com/nimbis/django.git#egg=Django-dev
[(1.4.1-patched) lorin@nibbler ~/.virtualenvs/nimbis/src/django]
$ git log | head -n4
commit e567f439bdfc60e16c465220fdaa8ea8a0fae936
Merge: c0748a6 226a3e7
Author: Alex Gaynor <...>
Date: Sun Jul 29 17:07:55 2012 -0700
我可以通过显式指定我想要的分支来解决这个问题,但是pip为什么要这样做呢?在
PIP版本控制对象(pip.vcs.版本控制)如果目标路径已存在,则签入check_destination。如果是这样,它将调用update方法而不是get。按默认值重置每个硬更新分支。在
您可以在上面和中引用的VersionControl类中看到确切的行为pip.vcs.git文件. 在
编辑:有点误读代码。如果目标存储库已存在,则调用“获取”而不是“更新”。由于rev_options默认为“origin/master”,update将重置到此分支。在
这很可能是个虫子!在
相关问题 更多 >
编程相关推荐