Git 快进合并以保留原始提交者和提交者日期

Git fast-forward merge to preserve original committer and committer date

当我在做类似

的事情时
git merge --ff-only someBranch

作者和作者日期保存完好,但提交者和提交者日期被覆盖。

如何进行快进合并并保留原始提交者和提交者日期?

Documentation 一点用都没有。

A fast-forward 合并不进行任何实际合并:它既不引入新的合并提交,也不触及任何现有提交(这将是一个变基,这可能是有害的操作)。相反,快进合并 将当前分支指针更改为目标提交。

因此在您的情况下,当您执行 git merge --ff-only someBranch 时,您当前的分支,例如master 将更改为指向 someBranch 指向的同一提交。 --ff-only 选项阻止 Git 执行实际的合并,因此它不会在那里创建合并提交,而只会快进。

这根本不应该更改提交,并保留 每个 属性 的提交。如果您看到与 --ff-only 合并的提交的不同提交者,那么他们在合并之前已经拥有这些值。