我知道这可以在存储库的管理页面上完成。可以在那里设置另一个默认分支。这就是这个问题的答案。
但我发现(也许是错误?)以下内容。如果您的 master 分支和 develop 分支完全相同,那么 git clone 将不会克隆默认的“develop”分支,但仍然是“master”!如果你向 develop 分支提交了一些东西,删除你的克隆然后再次克隆,你将获得 develop 分支!
这是 Git 行为还是 Github?是否可以修复此问题以使其始终发展?
最佳答案
这是一个 git “特性”
我刚刚用本地存储库测试了它,而我的第一个存储库 test
的 HEAD
是“develop
”:
C:\Users\VonC\Documents\GitHub\test>git symbolic-ref HEAD
refs/heads/develop
...在test1
中克隆的默认分支名称是master
!
C:\Users\VonC\Documents\GitHub\test1>git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
参见“How do I change a Git remote HEAD
to point to something besides “master
””:
从克隆的 repo 角度来看,远程源 repo 上的 HEAD
引用了 master
和 develop
:
C:\Users\VonC\Documents\GitHub\test1>git ls-remote origin
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 HEAD
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 refs/heads/develop
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 refs/heads/master
确定克隆仓库的默认分支的顺序是:
HEAD
referencesrefs/heads/master
and that exists -> you get a local branch calledmaster
, starting fromorigin/master
HEAD
referencesrefs/heads/anotherBranch
and that exists -> you get a local branch called anotherBranch, starting fromorigin/anotherBranch
关于git - 如何在 Github 中将 develop 分支设置为默认分支而不是 master?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12759615/