git - 当您在 merge 提交上输入 `git show` 时,差异意味着什么?

标签 git git-merge git-diff

当我在 merge 提交上 git show 时,它通常不显示差异,但有时,它会显示一个小的差异。它向我展示了什么?我的猜测是,它显示了如何解决所有冲突。

最佳答案

merge 提交上的

git show 使用 combined diff format其中省略了 parent 双方同意的文件。没有任何冲突的 merge 提交不会“添加”任何信息。但是,当您确实存在冲突并解决它们时,更改将作为 merge 提交的一部分进行暂存和提交,正如您在问题中已经指出的那样,这就是它们出现的原因。

如果您查看 merge 提交上的 git show,您将看到如下行:

Merge: 213bbc0 5c1c166

您可以使用以下命令查看差异(请注意,我反转了提交):

git diff 5c1c166..213bbc0 

这可能是您在 merge 提交上尝试使用 git show 时实际寻找的命令。

关于git - 当您在 merge 提交上输入 `git show` 时,差异意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32449006/

相关文章:

git - 在 git subtree pull 之前是否需要 git fetch?

git - 在github上追溯一个项目

git merge 相当于 git rebase --onto

Git - merge 与 rebase

git - `git diff --stat` 排除某些文件

git - Cygwin git config --global --edit 在错误的目录中查找

git - 如何在ansible中转发ssh key 以从源头 checkout 目标机器上的git存储库?

GIT:如何撤消 merge ?

git - 是否无法将文件更改与 Visual Studio 2019 中的特定提交进行比较?

python - 如何将 git diff 结果与代码行号并排输出以嵌入网页?