应用场景:一个功能,修改了多次,相对于commit了几次,但是功能只是完成了一个,此时需要合并分支,然后需要把多次提交记录总结成一个功能记录提交
-
git log 查看提交记录
-
找到此功能第一次commit记录的上一条记录,因为此不会参与合并 git rebase -i commit编号
-
此时会弹出编辑框
pick 7dbba7b 历史搜索第三版 pick 56f27c0 历史搜索第二版 pick 91bfbb8 历史搜索第一版然后进入编辑状态 将pick 修改为s (你要修改哪条,就把哪条的pick修改为s)
s 7dbba7b 历史搜索第三版 s 56f27c0 历史搜索第二版 s 91bfbb8 历史搜索第一版然后报错退出 :wq
-
此时会再次弹出编辑框
#这是一个三个提交的组合 #这是第一个提交说明 历史搜索第三版 #这是第二个提交说明 历史搜索第二版 #这是第三个提交说明 历史搜索第一版 # 请为您的变更输入提交说明,已 '#' 开始的行将被忽略,而一个空的提交
历史搜索功能最终版 # 请为您的变更输入提交说明,已 '#' 开始的行将被忽略,而一个空的提交修改完成后 保存退出 :wq
-
此时再使用git log 查看 本地的提交 已被合并修改
-
git push -f 直接强推到线上即可修改合并commit