使用 git rebase 修改历史 commit 里的文件
1. 说明#
需要修改某个历史提交记录里的文件,如:
要修改的文件:
git show fdb367f
将要修改 pkg/paginator/paginator.go 文件,删除块代码。
2. 开始 rebase#
git rebase --interactive fdb367f^
注意最后面的 ^
,意味着从这个 commit 开始。
将 fdb367f 的 pick 修改为 edit:
然后保存退出。
此时进入 rebase 模式。
3. 添加修改文件#
修改要提交的文件(此处略过)。
然后添加此文件:
git add pkg/paginator/paginator.go
最后使用 git status 查看状态:
4. 提交修改#
git commit --amend --no-edit
参数说明:
--amend
参数是指定提交到当前的 commit 。--no-edit
是保持当前 commit 的 message
5. 结束 rebase#
最后使用以下命令结束 rebase:
git rebase --continue
可以看到重新回到 master 分支,修改完成。
6. 注意#
rebase 后,自 fdb367f 后的 commit hash 都会发生变更。
推荐文章: