Intellij IDEA使用教程相关系列 目录

问题

开发在开发分支修复bug或开发需求,经常会提交了多个commit(这是好习惯,有记录),但cherry pick到测试分支很麻烦,push上去服务器,commit日志也很多
如果能把同一个bug或需求的多个commit合并成一个commit,push就好了

IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP

解决方案

可以的,用rebase
本地分支有3个提交,现在要合并这三个commit为一个
IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP
选中“代码优化1”,右键 Interactively Rebase from Here
IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP
修改这两个的值,第1次提交默认是“pick”。本处Idea无法设置,写死是pick
IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP

​action含义​

pick:git会应用这个补丁,以同样的提交信息(commit message)保存提交

reword:git会应用这个补丁,但需要重新编辑提交信息

edit:git会应用这个补丁,但会因为amending而终止

squash:git会应用这个补丁,但会与之前的提交合并

fixup:git会应用这个补丁,但会丢掉提交日志

exec:git会在shell中运行这个命令

重写下提交的信息
IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP
效果:
达到预期,合并为一个push了。
IDEA 出现问题:Idea-操作多次commit,如何合并为一个并push解决方案-LMLPHP

12-09 07:00