什么是分支
- 在企业项目开发中,会有多个分支同时运行,例:
- 用户看到的就是线上分支(通常是 master 分支)
- 开发时用的分支(通常是 dev 分支)
- ……
- 可以为每个任务创建一个分支,也可以对每个开发者创建一个分支。
查看所有分支
1 | git branch -v |
创建分支
1 | git branch 分支名 |
- 创建分支时,默认复制当前分支里所有内容到新的分支里。
- 创建分支时最好在 master 分支上创建。
- 若在 master 分支上创建了 a 分支,之后在 a 分支上创建了 b 分支,合并分支后一定要先把 b 分支合并到 a 分支上,在将 a 分支合并到 master 分支,不要把 b 直接合并到 master 分支上。
切换分支
1 | git checkout 分支名 |
合并分支
1 | git merge 分支名 |
- 合并分支:将目标分支合并到当前分支。
- 如果想把其他分支合并到 master 分支上,首先要切换到 master 分支,在执行上面指令。
解决合并冲突
冲突的产生:若两个分支同时修改了同一文件中同一位置的内容,合并分支时会出现冲突问题。
产生冲突后,需要手动选择留下那个分支的内容,在文件中会出现下面字样:
1
2
3
4
5<<<<<<< HEAD
内容1
=======
内容2
>>>>>>> dev其中
<<<<<<< HEAD
到=======
中间是当前分支的内容。=======
到>>>>>>> dev
是合并过来的分支里的内容,dev 是我创建的分支名。手动修改文件后,需要重新将文件提交到暂存区,并提交到本地仓库。此时只有当前分支 master 修改好了,dev 分支还是原来的样子。
master 分支提交后,切到 dev 分支,执行合并分支操作即可同步 master 分支的内容。