我一直熟悉创建,合并和删除分支。我想知道我在哪里所以我不会把工作交给错误的分支。我使用git branch -a
来查看我拥有的分支。我认为星号*
显示了我目前所在的分支。我收到的是什么意思:
* (no branch)
master
origin/HEAD
* (no branch)
master
origin/HEAD
因为当我时,我希望看到
$git checkout mybranch
* mybranch
master
origin/HEAD
答案 0 :(得分:4)
git checkout手册页确实提到了分支名称参数:
<branch>
分支结帐;
- 如果它引用了一个分支(即,当前面带有“
refs/heads/
”的名称是有效的引用),则检出该分支。- 否则,如果它引用了有效的提交,则
HEAD
变为“已分离”,您不再在任何分支上。
因此,您必须检查标记名称(有效提交),而不是检出分支名称,使 HEAD a detached one 。
答案 1 :(得分:1)
看起来你没有一个名为mybranch
的分支。如果要创建指向当前头部的分支,请使用git branch foo
。
如果您想要一个指向另一个参考的,请使用git checkout -b newbranch <ref>