首页 > 解决方案 > 提交作者在执行 Git Squash 时不显示最近的提交者名称

问题描述

我有一个分支,其他人完成的提交很少。我对同一个分支提交了更多更改。现在我正在使用以下命令将所有提交压缩为一个提交。

git rebase -i HEAD~2

从显示的提交列表中将第一个提交从 pick 更改为 reword 第二个从 pick 到 squash 然后将提交消息修改为一些有意义的 msg git push --force

现在,当我在遥控器上看到作者/提交者姓名时,仍显示旧作者姓名。由于我是最近的提交者,有没有办法可以将这个名称更改为我的?

标签: gitgit-squash

解决方案


最简单的方法是使用以下--reset-author选项修改压扁的提交:

当与-C/ -c/--amend选项一起使用时,或在有冲突的樱桃挑选后提交时,声明结果提交的作者身份现在属于提交者。这也会更新作者时间戳。

在您的情况下,您可以在将所有提交压缩为一个之后简单地执行此操作:

git commit --amend --no-edit --reset-author

这将设置当前user.nameuser.email作为提交的作者。


推荐阅读