Git将多个commit合并成一个commit

1、查看提交历史,git log
Git将多个commit合并成一个commit_第1张图片
这里使用到一个命令:git rebase -i,

我们合并21和22提交记录,那么git rebase -i 后面跟的参数应该是想要合并的最前面commit id的上一个,就是7690fbee9fb9df0a6d4226e81523acc5d421a3da这个

git rebase -i  7690fbee9fb9df0a6d4226e81523acc5d421a3da

这是弹出编辑框
Git将多个commit合并成一个commit_第2张图片
这里除了第一个外,其他的pick改成s,意思就是把第二条往下的记录全部合并到第一条记录中
修改完后保存。

然后会弹出让你编辑提交备注信息,保存即可

如果没有问题的话就合并好了。

然后进行git push提交到远程分支

如果你想放弃这次压缩的话,执行以下命令:

git rebase --abort 

如果要继续的话用下面命令

git rebase --continue

注意事项:

多个提交记录合并成一个,只适用于已经commit,但还没有push的记录。

问题1:
记录1、记录2、记录3, 都已经commit,这是只合并其中两个记录,剩下的那个记录会被还原,实际push到远程分支的只有两个记录

问题2:如果记录1、记录2、记录3,都已经commit,先pull下来最新代码,如果有人修改了同样的代码这是会出现冲突,需要手动解决。这时合并多个记录,合并完成后进行push,这是同样会出现冲突需要解决,解决完后重新push即可。

你可能感兴趣的:(java,java)