GIT diff给我的反馈与GIT merge不同
当我跑的时候GIT diff给我的反馈与GIT merge不同,git,Git,当我跑的时候 git diff FETCH_HEAD git merge FETCH_HEAD 它列出了一系列预期的更改,因为我从远程设备获取了更新的版本 但是 当我跑的时候 git diff FETCH_HEAD git merge FETCH_HEAD 它告诉我一切都是最新的 我哪里出错了?为什么合并后FETCH\u HEAD与HEAD不同? 合并将创建一个新的提交,其中包含来自原始头、现在的原始头和获取头的所有更改。这意味着,如果原始的头部包含获取头部中未包含的更改,则新的(合并的
git diff FETCH_HEAD
git merge FETCH_HEAD
它列出了一系列预期的更改,因为我从远程设备获取了更新的版本
但是
当我跑的时候
git diff FETCH_HEAD
git merge FETCH_HEAD
它告诉我一切都是最新的
我哪里出错了?为什么合并后
FETCH\u HEAD
与HEAD
不同?
合并将创建一个新的提交,其中包含来自原始头
、现在的原始头
和获取头
的所有更改。这意味着,如果原始的头部
包含获取头部
中未包含的更改,则新的(合并的)头部
将不同于获取头部
,因为它也包含这些提交
要检查的内容
出于上述原因或其他原因,您当前的分支机构可能已经更新了以前提取的FETCH\u HEAD
要检查这一点,请按如下方式从提取头获取sha
(十六进制数):
git log -1 FETCH_HEAD
commit bec5aadef68a5d29c9d523358a0189b86cad4c82
Author: Alex Brown <alex@XXX>
Date: Tue Nov 16 10:05:19 2010 +0000
weather report
如果返回除空白以外的任何内容,则FETCH\u HEAD
已被合并。您看到的任何差异都存在于当前头部
,可能是合并的头部
(或其后代)
*举例说明这一点“
您是否有未老化的更改?请检查
git status
。并尝试git diff HEAD FETCH\u HEAD
以避免与当前的工作树进行比较。无需提交任何内容,而git diff HEAD FETCH\u HEAD仍然会给我很多差异。因此,您的意思是,我的本地头实际上比我的远程头要早如果FETCH\u HEAD
已包含在HEAD
中,则可以调用git log HEAD..FETCH\u HEAD
。这将显示FETCH\u HEAD
中尚未包含在HEAD
中的所有提交。如果输出为空,则无需合并。还可以使用图形工具gitk进行协作。@mildfuz-tha这是你所看到的一种可能的解释。