当我试图熟悉 Git 时,这主要是出于好奇。我查看了“git fetch”的文档,但我没有看到下面的明显解释。在此先感谢,如果这非常明显,我们深表歉意。
1)从一个中央存储库,比如 GitHub,我克隆了一个website
在两台机器上命名的存储库,HostA
并且HostB
.
2) 在 上HostA
,我对文件进行更改,比如说README.txt
,并提交它。
在这一点上HostA
,分支的提交master
和
origin/master
预期不同,因为我还没有推送
git show master
git show origin/master
报告不同的哈希值(因为master
有变化而origin/master
没有)
3)一旦我推动,他们之后是一样的。
4)现在,HostB
如果我执行以下操作:
git fetch
git merge FETCH_HEAD
之后,在 HostB 上master
,并origin/master
在查询时报告相同的哈希值git show
但
如果相反,我已经完成了,则HostB
:
git fetch origin master
git merge FETCH_HEAD
那时哈希值仍然不同。
git show origin
git show origin/master
报告不同的哈希值
跟踪分支origin/master
在我执行普通操作之前不会更新git fetch
为什么是这样?