远程分支 origin/develop ,本地分支 local/develop。本地分支记录显示最近3次提交,V1,V2,V3都是使用的 git commit 提交,暂未执行 git push操作。
将version log日志调整为 显示本地分支 local/develop的记录。
例如:要将V2,V3合并提交后执行git commit,
选择中V2(较早的一条记录(V2,V3))鼠标右键执行,Interactively Rebase from Here…. 等待一定时长
会弹出一个对话框,对话框会依次显示V2,V3。按照时间远近,从上到下排序,即,V2排第一,V3排下面。
修改对话框中V3的Action的值从 pick --》改为 squash...
然后执行对话框中的 Start Rebasing。
这时候还会弹出一个对话框,这个对话框中,会显示V2,V3当时之心git Commit的时候写的提交注释,可以修改,例如改为“V2,V3合并提交”,修改完成在点击
Resume Rebasing。这时候 version Log日志窗口会显示 V1和 你刚刚提交注释信息“V2,V3合并提交”。
最后执行 git push 按钮,选中 V1,和 “V2,V3合并提交” 两次git commit 提交,push到远端即可。
备注:关于时间线:
IDEA,AndroidStudio中的
Version Log窗口:
Log框时间线:是从上到下,时间越来越早
Interactively Rebase from Here…. 的弹窗框,显示的git commit的提交记录的时间线是: 从上到下,时间越来越近。即最近一次提交,在最下面。
备注2 ,当 Rebasing Commits框中第一列Action的含义如下:
选择pick操作,git会应用这个补丁,以同样的提交信息(git commit message)保存提交
选择reword操作,git 会应用这个补丁,但需要重新编辑提交信息(git commit message)
选择edit操作,git会应用这个补丁,但会因为amending而终止
选择squash操作,git会应用这个补丁,但会与之前的提交合并
选择fixup 操作,git会应用这个补丁,但会丢掉提交日志
选择exec操作,git会在shell中运行这个命令