Git:合并分支

  • git merge 分支名                     //把指定的分支行合并到当前的分支上

正常合并

在 master 分支上合并 hot-fix 分支(将hot-fix的合并到master)

合并分支(冲突合并)

冲突产生的原因

合并分支时,两个分支在同一个文件的同一个位置有两套完全不同的修改。 Git 无法替我们决定使用哪一个,因此,必须人为决定新代码内容。

产生冲突

1.首先,在master修改文件hello.txt最后一行内容,改成“master 01”,并提交:

2.然后,在hot-fix修改文件hello.txt最后一行内容,改成“hot-fix”,并提交:

3.切换到master分支,然后将hot-fix分支的合并到master,冲突产生:

解决冲突

编辑有冲突的文件,删除特殊符号,决定要使用的内容

创建分支和切换分支

master、 hot-fix 其实都是指向具体版本记录的指针。当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。

HEAD 如果指向 master,那么我们现在就在 master 分支上。
HEAD 如果执行 hot-fix,那么我们现在就在 hot-fix 分支上。
所以切换分支的本质就是移动 HEAD 指针。

阅读剩余
THE END