代码分支合并 rebase merge区别
代码分支合并 rebase merge区别
合并分支时,有rebase和merge两种方法,分析两种方法的区别。
一、创建库
先在远程仓库添加一个库
然后拉取到本地。
背景:在主线分支上提交了3次,但是现在发现第一次提交的代码有问题,想要修改第一次提交的代码。
二、rebase方法
先分别提交3次代码,然后切到第一次分支,创建开发分支,然后在该分支上重新修改代码,最后切到主分支上变基到开发分支,形成一条分支。整体操作流程如下图:
三、过程结果
这是在第一次提交分支上创建dev分支,结构图
rebase解决冲突前后结果
整个过程文件内容变化,改变第一分支,后续分支的内容会自动帮忙同步更新。
需要注意的点有:
1、若想把dev代码合到main主线,是先切到main主线,再rebase变基到dev分支上。 git rebase dev
2、修改冲突后需要再执行add和git rebase --continue
四、merge方法
需要注意的点有:
1、若想把dev代码合到main主线,是先切到main主线,再merge。 git merge dev
2、修改冲突后需要再执行add和git merge --continue
这是合并前结构关系
合并后