案例:
我想要将master
分支中的 测试一
、测试二
、测试三
三次commit
合并为一次commit
1. 点击Git

2. 双击点击commit
所在的分支
3. 右键要合并的多个commit
中的第一次提交的commit

4. 点击右键后弹出的菜单中的Interactively Rebase From Here
选项
5. 点击测试二
,再点击上方的Squash
注意:一定要确保点击到了**测试二**
,即**测试二**
这一行的灰色的。
这一步的含义是将**测试二**
的**commit**
添加到**测试一**
的commit中
6. 此时会弹出一个文本区,输入内容作为测试一
和测试二
两个commit
合并之后生成的新commit
的message
7. 同理操作测试三
8. 点击Start Rebasing
9. 此时测试一
、测试二
、测试三
的commit
合并成功
10. 扩展:
向上箭头
:将当前commit
向上移动,即交换commit
顺序,让当前选中的commit
顺序距离现在更远向下箭头
:将当前commit
向下移动,即交换commit
顺序,让当前选中的commit
顺序距离现在更近Reword
:重命名当前commit
的提交message
Squash
:将当前commit
和上一次commit
合并Drop
:删除当前选中的commit
注意:点击右下角的Start Rebasing
之后操作才算生效,也就是未点击Start Rebasing
之前做的如何操作都不会保存/生效