Git如何使用rebase操作修改已经提交了的commit信息(用户名和邮箱
修改连续多个 commit
比如,你的 commit 历史为 A-B-C-D-E-F , F 为 HEAD , 你打算修改 C 和 D 的用户名或邮箱,你需要:
- 运行
git rebase -i B
,如果你需要修改 A ,可以运行git rebase -i --root
- 把 C 和 D 两个 commit 的那一行的
pick
改为edit
- 当 rebase 开始后,将会暂停在 commit C,运行
git commit --amend --author="AuthorName <email@address.com>"
- 然后运行
git rebase --continue
,将会继续暂停在 commit D - 再次运行
git commit --amend --author="AuthorName <email@address.com>"
,git rebase --continue
- 重复5这个步骤,直到需要修改的commit修改完成为止,rebase 结束
- 如果需要更新到远程仓库, 使用
git push -f
(请确保修改的commit 不会影响其他人)