2010-04-30 72 views
5

我已经熟悉创建,合并和删除分支。我喜欢知道我在哪里,所以我不会将工作投入错误的分支。我使用git branch -a来查看我拥有哪些分支。我认为asterix *显示了我目前正在使用哪个分支。这是什么意思时,我得到:我在哪里? *(没有分支)

* (no branch) 
master 
origin/HEAD 

因为当我$git checkout mybranch我希望看到

* mybranch 
master 
origin/HEAD 

+0

你是否意外删除了你的分支? – 2010-04-30 09:51:11

+0

'git branch -a'的结果是什么?它包括“遥控器/原产地/ mybranch”吗? – 2010-04-30 15:07:32

回答

1

它看起来并不像你有一个分支叫mybranch。如果要创建指向当前头的分支,请使用git branch foo

如果你想要一个指向另一个参考,使用git checkout -b newbranch <ref>

4

的git的结帐手册页确实提到,为分支机构名称参数:

<branch> 

分公司结账;

  • 如果它涉及到一个分支(即当前缀“refs/heads/”,是一个有效的ref)的名称,那么该分支被检出。
  • 否则,如果它引用了有效的提交,那么HEAD将变为“分离”并且您不再位于任何分支上。

所以不是已经签出一个分支的名字,你一定已经检查了标签名(有效的提交),使您的HEAD a detached one

+0

你是完全正确的,我有一个独立的头。对于我来说,这是一个未知的情景,我在研究分支时看过。我找到了所有需要修复的信息。感谢您指点我正确的方向! – Neofizz 2010-06-15 08:53:45