分支管理

创建分支

git branch命令查看分支:

  1. git branch
  2. * master

1

不带选项,默认为查看分支

2

*表示当前分支

3

master为默认分支

新建分支:

  1. $ git branch slave1
  2. $ git checkout slave2
  3. M slave
  4. Switched to branch "slave"
  5. $ git branch3
  6. master
  7. * slave 4

1

git branch使用分支名称作参数,新建分支

2

git checkout,切换到指定分支

3

查看分支

4

当前分支已变为slave

使用如下命令删除分支:(先不要删除,后面会用到)

  1. git branch -D 分支名称

合并分支

使用git merge合并分支:

  1. 编辑 test1
  2. git commit -a -m "slave分支"2
  3. git checkout master3
  4. git diff master slave4
  5. git merge slave5

1

增加一点内容

2

在当前分支提交此版本

3

切换到 master分支

4

比较两个分支

5

合并 slave分支 的内容

处理冲突

如果没有冲突的内容,git 会自动处理合并。如果产生冲突(同一行的内容不一致),git 会输出如下信息:

  1. Auto-merged test
  2. CONFLICT (content): Merge conflict in test
  3. Automatic merge failed; fix conflicts and then commit the result.
  • test文件在合并时发生冲突,需要手动处理冲突,然后后再次提交

现在处理冲突,打开test文件,有如下内容:

  1. <<<<<<< HEAD:test
  2. 这是master分支中的一行
  3. =======
  4. 这是slave分支中的一行
  5. >>>>>>> slave:test

1

当前内容信息

2

当前内容

3

分隔线,分隔冲突的内容

4

slave分支内容

5

slave分支:test文件

修改这部分内容,保留正确的,然后提交

[提示]提示
冲突不只在合并分支时产生。无论何种冲突,处理的方法是一样的

合并后可以删除该分支:

  1. git brancd -d slave

1

-D强行删除分支;-d只有分支内容被合并后才能删除