使用Git rebase合并多条远程commit,使用git commit amend讲本地commit合并到远程已有commit

发布时间 2023-07-05 10:06:57作者: Frank_Jin

1.在项目目录打开git bash

2.

git log

3.找到想要合并的几条commit之前的一条commit。

复制commit后面的一串16进制代码:e65b97e332c0683631c334b870e0ceb062163815

4.

git rebase -i e65b97e332c0683631c334b870e0ceb062163815

界面进入vim

在最上方显示所有可以合并的commit

将除了最下面一条的pick保留,其余pick改为s或者squash

:wq,保存退出。

5.接下来的界面在不需要的commit message前加#注释掉,只保留一个修改为此次合并的message

:wq,退出

6.成功有提示:Successfully rebased and updated xxxxxxx

如果失败 可以使用 git rebase --continue 进入vim编辑器重新操作。
如果想要放弃这次编辑 可以使用git rebase --abort 命令中止本次操作。

7.

git push -f

强制推送,完成合并。

 

另:

如果觉得此次提交修改较小,可以使用如下指令,直接合并到之前的commit:

git add xxxxx
git  commit --amend --no-edit

 最后再次强推

git push -f