在实际开发中总是会基于master分支新建各种分支,当需要将新建分支合并到master分支时,可能新分支的提交log和master的提交log有一部分处于并行开发,所以会导致master的log记录会出现分叉,对比直接merge,使用rebase会使得log更加直观。
如下图:C3和C2分支其实属于并行开发
(1)如果直接使用合并,则master的log将会是这样的
(2)如果使用变基
变基的git代码
git checkout newBranch1 //先切换到新分支1
git rebase master //变基到master分支
git checkout master //切换到master分支
git merge newBranch1 //合并newBranch1
变基后的log
个人浅显的理解,如有不正确之处欢迎指正。