如何更改单个提交的提交作者?
我想更改历史记录中某个特定提交的作者。不是最新的提交。
交互式地从历史记录中较早的一个点开始进行变基(git rebase -i <earliercommit>)。在被重新基化的提交列表中,将需要修改的提交哈希旁边的文本从“pick”改为“edit”。然后当 git 提示您更改提交时,使用以下命令:
git commit --amend --author="Author Name <email@address.com>" --no-edit
例如,如果您的提交历史记录为 A-B-C-D-E-F,其中 F 是 HEAD,并且您想更改 C 和 D 的作者,那么您需要执行以下操作:
- 指定
git rebase -i B(执行git rebase -i B命令后,您会看到什么样的输出)- 如果要编辑
A,请使用git rebase --root
- 如果要编辑
- 将
C和D的行从pick改为edit - 退出编辑器(对于 vim,这将是按 Esc 键,然后输入
:wq)。 - 一旦开始变基,它首先会在
C处暂停。 - 您需要执行
git commit --amend --author="Author Name <email@address.com>" - 然后执行
git rebase --continue - 它又会在
D处暂停。 - 然后再次执行
git commit --amend --author="Author Name <email@address.com>" - 再执行
git rebase --continue - 变基将完成。
- 使用
git push -f更新您的源与更新的提交。

浙公网安备 33010602011771号