过去
以前Git只有一种合并方法git merge(merge翻译就是合并),过程是将分支和Master分支(主分支)进行对比然后合并。
rebase的出现
使用git rebase将分支代码合并到主分支的过程其实是: 根据分支修改部分的记录生成Patch(补丁),合并时主分支使用补丁进行合并
rebase带来的变化
- 减少了主分支中不必要的提交记录。在开发流程中,分支通常用于某个功能的开发,使得这个功能的开发过程和主分支分离开来。在这个功能开发过程中可能会产生大量提交记录。如果使用git merge合并到主分支,会导致这些提交记录统统进入主分支提交记录中。主分支其实只需要这个功能完成开发的这一条记录就可以了,对大量开发过程产生的提交记录并不关心(这里给新手简单说明一下,提交记录的用途:分支提交记录通常用于某个功能的开发,例如某端代码的回滚;而主分支提交通常用于功能迭代,例如某个功能的回滚,如果出现大量分支提交记录会给查找具体某个功能完成的节点带来不必要的麻烦)
- 补丁使用更加灵活。合并时只需要补丁文件即可,不需要全部代码。