2010-03-09 159 views
5

我是Git的新手,所以我怀疑我在这里误解了一些东西,但我仍然会问。Git远程有主,但没有HEAD

通过TortoiseGit我做到以下几点:

  • 初始化一个新的Git回购本地​​
  • 自述文件添加到它,并提交
  • 添加新的远程
  • 推新回购协议的渊源考(远程)

如果我再浏览参考文献我看到以下内容:
头/主
遥控器/产地/主

我感到奇怪的是,我没有看到在遥控器一个头。

如果我删除我的本地回购,然后从服务器复制它(我只是推到上面),然后浏览我看到裁判:
头/主
遥控器/产地/ HEAD
的遥控器/ origin/master

那么为什么我在初始推后没有看到远程头?

注意:我已经通过Git Bash命令(即不是Tortoise Git)完成了相同的操作。

回答

0

这是因为你不拉你的存储库。当你推动你更新ref远程/ origin/master,但不是HEAD,因为它可以被其他提交。如果在HEAD到达后拉动。

它随着你的克隆而来。从远端(如HEAD和主)获取所有的引用

+0

我并不完全确定我的理解 - 你是说在我完成初始推送到远程后,如果我做了拉和/或抓取,我应该得到头部?因为我已经尝试过了,而我却没有。 – dwynne 2010-03-10 08:48:07

3

这是因为HEAD不是您应该推送的远程引用,它只是对远程存储库的HEAD指向的提交的引用。服务器上的这个存储库显然有一个工作树,不是用git init --bare命令创建的。我猜Tortoise Git根本无视它,因为软件中有一些规则。这听起来很奇怪,git将无法显示它。

相关问题