检查了一个不同的分支。为什么HEAD仍然指向主分支

时间:2016-10-25 17:41:48

标签: git git-branch git-checkout

我检查了其他人的分支并跟踪它。

git checkout --track origin/foo

但是,即使我检出了不同的分支(不是master分支),为什么HEAD仍然指向master

当我输入git branch -a时,我明白了。所以我不能做git reset HEAD^ --hard

之类的事情
  master  
* foo  
  remotes/origin/HEAD -> origin/master  
  remotes/origin/foo  

我基本上想查看其他人的分支,然后继续努力。 同时,提交并推进他的分支。

2 个答案:

答案 0 :(得分:1)

您应该能够git checkout foo,它会自动知道跟踪正确的上游分支。

答案 1 :(得分:0)

HEAD未指向master。这个输出:

* foo

表示您的本地HEAD指向foo。星号(*)代表HEAD

你可能对这一行感到困惑:

 remotes/origin/HEAD -> origin/master

表示远程 HEAD指向远程master。这对您的本地HEAD无效。

作为@eddiem mentioned,将来,要查看跟踪origin/foo的本地分支,请执行以下操作:

git checkout foo

(这假设您还没有名为foo的本地分支。)