This is a git "feature"
I just tested it with local repo, and while the HEAD
of my first repo test
is "develop
":
C:\Users\VonC\Documents\GitHub\test>git symbolic-ref HEAD
refs/heads/develop
... the name of the default branch cloned in test1
is master
!
C:\Users\VonC\Documents\GitHub\test1>git branch -a
* master
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
See "How do I change a Git remote HEAD
to point to something besides “master
”":
From the cloned repo perspective, HEAD
on the remote origin repo references both master
and develop
:
C:\Users\VonC\Documents\GitHub\test1>git ls-remote origin
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 HEAD
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 refs/heads/develop
c215dd28ea8bf9b0c6b522c784b70bbbb3e858a5 refs/heads/master
And the order for determining the default branch of a cloned repo is:
HEAD
references refs/heads/master
and that exists
-> you get a local branch called master
, starting from origin/master
HEAD
references refs/heads/anotherBranch
and that exists
-> you get a local branch called anotherBranch, starting from origin/anotherBranch