git log 看一眼
假设是如下情况
commit 3333
Author: xxx
Date: Fri Dec 6 10:50:50 2019 +0800
this is the third commit.
change-id:33333333
commit 2222
Author: xxx
Date: Fri Dec 6 10:40:40 2019 +0800
this is the second commit.
change-id:22222222
commit 1111
Author: xxx
Date: Fri Dec 6 10:30:30 2019 +0800
this is the first commit.
change-id:1111111
此时我要把2和3合成一个
输入 git rebase -i 1111
意思是,rebase commit号1111后面的commit
这时候会进入一个模式,跟着改就行了
我的电脑是ctrl+o进入输入模式
第一个文件,它会出现一个头两行是
pick 3333 .........
pick 2222.........
这样的文件,改第二行为 squash 2222 (直接s 2222也可以,其实底下有提示s 全写squash啥的)
保存,即可进入下一个文件,不会就ctrl+x退出,退出前会问要不要保存,输入Y,就保存并退出了
进入下一个文件,会有四行信息
commit 3333
change-id :33333333
commit 2222
change-id:22222222
把这四行注释(前面加#),然后输入自己要的commit信息
例如
commit 2233
我一开始还保留了change-id,导致报错,这个不需要,它会自己重新生成一个
然后push到远程就可以啦!!!!!!!!!!!✿✿✿✿✿✿٩(ˊᗜˋ*)و✿✿✿✿✿✿撒花
做完结果还有个更简单的
git commit --amend
这个直接就可以修改commit信息,操作流程跟刚才的第二大步是一样的。