Intellij annotate 在 git rebase 之后显示错误的日期

Intellij annotate shows wrong date after git rebase

我不得不做一个相当大的 git 变基,这导致许多文件发生冲突。在某些情况下,我不得不重写部分代码以使其兼容,而不仅仅是使用 line/block.

的上游或下游版本

到目前为止没有问题!解决所有冲突后,我的 git 日志看起来符合预期,并且历史记录发生了变化。

但是,通过在 Intellij 中使用 Annotate,变基提交显示变基完成的日期。

我现在有相同的历史,(提交哈希是相同的),在多个提交中,有两个不同的日期。我是不是搞砸了什么或者这是预期的行为

我不知道这是否是预期的行为(即我在网上做了一些研究但找不到任何东西),但这就是正在发生的事情:

简答

出于某种原因,IntelliJ 显示了提交日期,在您的情况下,它对应于 rebase 的日期。

一点(必要的)git理论

Rebase 创建新的提交,这就是 git 的工作方式。但是 git 知道新旧提交是相关的,所以它在新提交中保存了原始日期(作者日期)和变基日期(提交日期)

您可以使用 --pretty=fuller

选项在 git 日志中查看这两个日期

趣闻

IntelliJ 正在显示提交日期和作者。

可以选择显示提交日期。但在这种情况下,我会显示提交者以及提交日期。另一个选项是显示作者和作者日期。

在我看来,IJ 把事情弄混了,但也许这是有原因的