- Git操作主要是指的:
Git分支
分支特性
分支创建
分支转换
分支合并
代码合并且冲突解决
a.现在的场景:
b.什么是分支
- 1.在版本控制过程中,当我们需要同时推进多个任务的时候,为每个任务,我们就可以
为每个任务创建的单独分支
。 - 2.分支创建后,这样就可以使开发人员可把自己的工作任务
从开发主线上分离开来
,在自己的分支上进行开发,这样也不会影响主线分支的运行。其实分支底层也是指针的引用
c.分支的好处
- 1.同时并行推进多个功能开发,提高开发效率。
- 2.各个分支在开发过程中,如果某一个分支开发失败,不会对其他分支有任何影响。失败的分支删除重新开始即可。
d.分支常用操作:
e.分支上常用的命令
- 1.查看分支号:
git branch -v
- 2.创建分支:
git brance 分支名
;如命令:git branch hot-fix
,创建hot-fix分支;
- 4.切换分支:
git checkout 分支名
- 5.实际操作分支切换
f.合并分支(无冲突情况):
f1.把指定的分支合并到当主分支
上(无冲突情况):
- 1.先切换到master分支上,然后在master分支上,把hot-fix分支合并过来:
git merge 分支名
f2.合并分支(有冲突情况):
- 1.在不同的分支上可能会更改同一个文件,每个人改的都不一样。那么在何合并的时候,就会
发生冲突
,所以需要手动人为
的来进行合并。
- 2.编辑有冲突的文件:
vim hello.txt
,删除特殊符号,决定要使用的内容
( 特殊符号代表的意义)
<<<<<<< HEAD
:当前分支的代码
=======
: 合并过来的代码
这个(>)代表:>>>>>>> hot-fix
- 3.手动合并后,查看状态发现是未提交的状态,所以手动合并后把提交代码到暂存区,然后再提交到本地库,
提交到本地库的时候,命令中不再需要带文件名了
,命令是:git -m "注释"
- 4.合并后的文件也
只是修改master分支上
了,对于hot-fix文件上的内容没有影响,
f.分支切换的原理-图像解析
- 1.
master、hot-fix
其实都是指向具体版本记录的指针。当前所在的分支,其实是由 HEAD决定的。所以创建分支的本质就是多创建一个指针。
- HEAD 如果指向 master,那么我们现在就在 master 分支上。
- HEAD 如果执行 hotfix,那么我们现在就在 hot-fix 分支上。
1.5.Git的团队协作开发
- 1.团队内部协作情况1
- 2.跨团队协作情况2