使用git rebase的正确姿势
公司的workflow的特点就是每次push到master都要rebase,保持master历史记录是一条线,方便回滚。
所以记录一下rebase的正确使用姿势
git rebase -i 合并历史commit
首先接触git rebase是用来合并历史提交的,情景如下
新建我的分支,开发一个新功能
修改,提交
发现有问题,修改,提交
增加新功能,修改,提交
push到远程
boss:你这个不行,一个功能只能有一个提交
ok
那么rebase -i 就派上用场了,-i参数是指互动interaction
上面情景里,我一共有三次提交,可以查看记录git log
会发现我们的三次提交在最上面,现在我们要把这三个合一
命令这么写
git rebase -i HEAD~3
这个命令中HEAD~3代表了操作最新的三次提交
命令运行后,会在默认编辑器里打开一个文档
类似于
pick 231j2jif312
pick 1231231rr8y32
pick 1233472