如何更改单个提交的提交作者?

发布时间 2023-10-30 22:33:11作者: 小满独家

内容来自 DOC https://q.houxu6.top/?s=如何更改单个提交的提交作者?

我想更改历史记录中某个特定提交的作者。不是最新的提交。

相关: 如何更改多个提交的作者和提交者姓名/电子邮件?


交互式地从历史记录中较早的一个点开始进行变基(git rebase -i <earliercommit>)。在被重新基化的提交列表中,将需要修改的提交哈希旁边的文本从“pick”改为“edit”。然后当 git 提示您更改提交时,使用以下命令:

git commit --amend --author="Author Name <email@address.com>" --no-edit


例如,如果您的提交历史记录为 A-B-C-D-E-F,其中 FHEAD,并且您想更改 CD 的作者,那么您需要执行以下操作:

  1. 指定 git rebase -i B执行 git rebase -i B 命令后,您会看到什么样的输出
    • 如果要编辑 A,请使用 git rebase --root
  2. CD 的行从 pick 改为 edit
  3. 退出编辑器(对于 vim,这将是按 Esc 键,然后输入 :wq)。
  4. 一旦开始变基,它首先会在 C 处暂停。
  5. 您需要执行 git commit --amend --author="Author Name <email@address.com>"
  6. 然后执行 git rebase --continue
  7. 它又会在 D 处暂停。
  8. 然后再次执行 git commit --amend --author="Author Name <email@address.com>"
  9. 再执行 git rebase --continue
  10. 变基将完成。
  11. 使用 git push -f 更新您的源与更新的提交。