我的理解是,克隆库的默认分支应该是指向被克隆仓库中HEAD所指向的分支。
现在我遇到了一个例外情况。我的理解显然是有误的,那么在克隆(bare)仓库时,什么确定了默认的检出分支呢?
该仓库上最后一次提交是将裸仓库HEAD所引用的分支与我在克隆中获取的检出分支合并。
运行git remote show origin
返回:
Fetch URL: ...
Push URL: ...
HEAD branch (remote HEAD is ambiguous, may be one of the following):
<bad-branch>
live
Remote branches:
...
裸仓库使用 Git 版本 1.8.2.1,客户端使用 1.7.12.4,传输方式为 SSH。
也许答案实际上是这个。这个回答证实了这一点。如果有多个符号引用指向与 HEAD 相同的修订版本,则客户端将会猜测要使用哪个分支。
HEAD
所指向的相同提交的分支。这是在我删除master
分支并将另一个新分支设置为默认分支后发生的。目前还有一些其他分支也指向这个新默认分支的最新提交。 - Vicro