Github 显示错误的提交差异

Github shows a wrong commit diff

当我在 github 中查找此提交时,它显示单个文件已更改:

https://github.com/opensupports/opensupports/commit/2aded07b568cba44ccbe2259fe6984c543ee2353

但是当我克隆 repo 并使用

git diff --name-only 10adc62d9070fbc69dfb55d7575bf950df793bc1 2aded07b568cba44ccbe2259fe6984c543ee2353

它将显示 3 个更改的文件:

client/src/app-components/ticket-event.js
client/src/app-components/ticket-event.scss
server/controllers/ticket/comment.php

2aded07b568cba 的父级 不是 10adc62d9070fb,它是 33bf2c4。因此,在 10adc62d9070f 和 2aded07b568cba44cc 之间的其他修订版中还有其他更改,修改了其他文件。

您看到了差异,因为 10adc62 不是 parent 提交。 GitHub 按创建顺序向您显示提交,但 2aded07b(和 10adc62)的 parent 是 33bf2c4。所以当你做差异时,你实际上是在比较两个不同的分歧分支,这些分支后来合并在一起。

如果你想在命令行中与 parent 提交进行比较,不管它叫什么,你都可以在末尾写一个插入符号的修订版,就像这样:2aded07b^ .当然,这只有在你只有一个 parent.

时才有效