为什么我的`git branch -l -a`输出里有`remotes / origin / HEAD – > origin / master`项?
我不明白输出到git branch -l -a
的第二行git branch -l -a
: remotes/origin/HEAD -> origin/master
。
git branch -l -a * master remotes/origin/HEAD -> origin/master remotes/origin/master
这是另一种手术的剩余吗? 我应该清理吗? 我该怎么做?
通常我会在cli上使用git,但是在本地存储库上,我使用了TortoiseGit
来为朋友find一个简单的git工作stream程。
不,不需要清理:它是远程回购引用的象征分支。
当你克隆你的repo时,你将默认在remotes/origin/HEAD
引用的分支上。
也可以看看:
- “ Git:正确的方式来改变裸仓库中的活动分支?
- “ 如何改变一个Git远程HEAD指向除”主“之外的东西 ”
- “
origin/HEAD
如何设置? ”
您可以使用git remote set-head origin -d
来删除origin/HEAD
symbolic ref,或者使用git remote set-head origin -a
来查询远程设备,并自动将origin/HEAD
指针设置为remote的当前分支。
origin/HEAD
参考是可选的。 它只作为一个语法快捷方式:如果它存在并指向origin/master
点,则可以使用特定的origin
,否则将指定origin/master
。
git remote(1)手册页描述了这一点:
组头
设置或删除指定远程的默认分支(即symbolic-ref refs / remotes // HEAD的目标)。 有一个远程默认分支不是必需的,但允许指定远程的名称,而不是一个特定的分支。 例如,如果原始缺省分支设置为主,则可以在通常指定原点/主标识的任何位置指定原点。