文章目录
- 前言
- 准备
- 正常分支合并
- 1. 创建两个不冲突分支
- 2. 将dev合并到test
- 冲突分支合并
- 1. 制造分支冲突
- 2. 冲突合并
前言
Git分支合并操作
准备
这里先在Gitee创建了一个空仓库,方便远程查看内容。
正常分支合并
1. 创建两个不冲突分支
(1)先创建两个分支dev和test
# 创建dev分支
git branch dev
# 创建test分支
git branch test
# 查看本地仓库分支
git branch -v
(2)切换分支到dev,新增内容dev.txt
# 切换到dev分支
git checkout dev
(3) 提交和推送到远程仓库,刷新之后可以看到dev分支有提交的代码
(4)切换到test分支,新增内容test.txt
# 切换到test分支
git checkout test
(5) 提交内容到远程仓库,刷新后可以看到远程仓库有了test分支内容
2. 将dev合并到test
根据上面的情况,上面准备的两个分支没有冲突内容
(1)切换到test分支
# 切换到test分支
git checkout test
(2) 将dev分支合并到当前分支(test分支)
# 将dev合并到当前分支
git merge dev
执行合并时会进入vim编辑器让你写原因(一段话),此时可以直接输入
:wq
并按回车键退出即可
(3)此时完成了本地分支合并,需要将执行push操作,将本地仓库推送到远程仓库,再次刷新,可以看到远程仓库的test分支已经有了dev的内容。
冲突分支合并
1. 制造分支冲突
(1) 在test分支下编辑了dev.txt的内容,一行修改,两行新增,然后提交到远程仓库
此时各分支的仓库网络图(供参考,查看分支关系)
(2) 切换到dev分支,制造冲突,修改1行,新增2行,提交到远程仓库
2. 冲突合并
将dev分支合并到test
(1)切换到test分支
git checkout test
(2) 执行分支合并, 提示合并冲突
MERGING 表示合并中
git merge dev
(3)认识和处理冲突文件
(4) 提交和推送处理完的文件到远程仓库, 打开远程仓库,可以看到合并后的内容
而原dev分支内容无变化
仓库网络图(分支关系),供参考