具体详情
具体常见如下,假设有master和change分支,从同一个节点分裂,随后各自进行了两次提交commit以及修改。随后即为change想合并到master分支中,但是直接git commit和git push是不成功的,因为分支冲突了【master以及修改】
- 原来开始master和change图示【相同颜色为同一分支内容】
git merge操作【历史记录较多】
-
git merge实际上为即为先让git按照master和change分支提交顺序排列,分别到达各自顶端,随后执行merge commit具体如下图所示,git log命令查看的时候会存在多个提交记录,而且最终合并到feature分支中
-
代码
-
git checkout change git pull origin master # 等于 git fetch origin master + git merge master change
-
-
具体如下图所示
git rebase操作【历史记录较少】
-
git rebase实际上先移动到master顶端,即为更新所有change分支内的master分支内容,即为先更新master分支内容,随后对change分支直接移动到master分支顶端,在执行change分支内容,因此,最终合并记录较少
- 具体如下图所示
- 代码
-
git checkout feature git pull --rebase origin master # 等于git fetch origin master + git rebase master
-