一、未使用 rebase 的提交数量

[git] rebase 合并多个commit_vim

上图中 可以看到 有四提交

二、使用rebase

git rebase -i head~2

表示合并 最后的两个提交, 也就是vv1 和 vv2

回车会弹出:

[git] rebase 合并多个commit_shell命令_02


修改为

[git] rebase 合并多个commit_git_03

pick:保留该commit(缩写:p)
reword:保留该commit,但我需要修改该commit的注释(缩写:r)
edit:保留该commit, 但我要停下来修改该提交(不仅仅修改注释)(缩写:e)
squash:将该commit和前一个commit合并(缩写:s)
fixup:将该commit和前一个commit合并,但我不要保留该提交的注释信息(缩写:f)
exec:执行shell命令(缩写:x)
drop:我要丢弃该commit(缩写:d)
label:用名称标记当前HEAD(缩写:l)
reset:将HEAD重置为标签(缩写:t)
merge:创建一个合并分支并使用原版分支的commit的注释(缩写:m)
wq 退出,

进入另一个 vim

[git] rebase 合并多个commit_shell命令_04


修改为

[git] rebase 合并多个commit_shell命令_05

git log

[git] rebase 合并多个commit_shell命令_06

关于 git rebase 命令合并多个commit