我不理解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,以便为朋友找到一个简单的git工作流。
发布于 2012-09-27 12:02:28
不,不需要清理:它是您的远程存储库引用的符号分支。
当您克隆存储库时,您将默认位于remotes/origin/HEAD引用的分支上。
另请参阅:
origin/HEAD get set?"注意:在早于2.20的Git版本中,您需要use git branch --list (or git branch), not git branch -l。
发布于 2013-09-12 00:04:49
您可以使用git remote set-head origin -d删除origin/HEAD符号引用,或使用git remote set-head origin -a查询远程数据库并自动将origin/HEAD指针设置为远程数据库的当前分支。
origin/HEAD引用是可选的。它只起到语法快捷方式的作用:如果它存在并指向origin/master,您可以简单地在指定origin/master的地方使用specific origin。
git remote(1)手册页对此进行了说明:
机头
设置或删除命名远程的默认分支(即symbolic ref refs/remotes//HEAD的目标)。不需要具有远程的默认分支,但允许指定远程的名称来代替特定的分支。例如,如果源的默认分支设置为master,则可以在您通常指定origin /master的任何位置指定源。
https://stackoverflow.com/questions/12613793
复制相似问题