1.分支的概述和优点
在这里插入图片描述
在这里插入图片描述

其实分支相当于我用U盘拷贝了一份给别人用。

一个分支就相当于复制了一个副本,我在这个复制的副本上做开发,就算我写代码把整个代码开发坏了,没有问题,因为你还有别的分支在运行。其实在git里面,它也不是副本,分支的底层其实也是指针的引用)

在这里插入图片描述

把分支当成一个人,有很多个在修改同一份文件,最后要合并。

将游戏分支和主线分支合并
(弹幕:看完git接着看springboot和redis)

在这里插入图片描述
并行开发,在各个分支开发过程中它互不影响,当某个分支开发失败,不会对其他分支有影响,失败的分支删除即可。

2.分支的查看&创建&切换
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在hot-fix上修改这个hello.txt代码(修改的内容是:后面数字变成是22222,3333333),:wq保存,当然你在hot-fix分支上修改过之后,你要查看本地库状态,然后将这个文件添加到暂存区,提交到本地库

在这里插入图片描述

//查看详细版本信息
git log

//查看版本信息
git reflog

3.合并分支(正常合并)
在这里插入图片描述

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

将当前的git(hot-fix分支)切换回master分支
在这里插入图片描述
将hot-fix分支合并到master分支上,首先需要来到master分支,站到master分支上来合并

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

在这里插入图片描述
合并后master分支和hot-fix分支是一样的

总结:在master分支将hot-fix分支下的hello.txt合并过来,合并后,master分支下的hello.txt中的内容被hot-fix分支下的hello.txt替换掉。master分支和hot-fix分支下的hello.txt内容一样

4.合并分支(冲突合并)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
hot-fix 和 master下都修改了,并且改的又都是同一个文件—hello.txt
这就会导致当进行文件合并时,会产生冲突
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

// 1.保存并退出
:wq

//2.不保存退出
:q!

只能手动解决分支冲突
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结:合并合并,只能修改你合并后的那个分支(此处是master分支),不会修改你合并过来的那个分支。(其他分支下(hot-fix分支)的hello.txt 内容不变)

深刻总结:
正常合并下:从master分支跳到hot-fix分支下修改hello.txt,然后再回到master分支将hot-fix分支进行合并,修改的内容是合并的内容,即合并后master分支发生了改变,而hot-fix分支不发生改变(其实这里master分支的内容是hot-fix分支内容的复制,它俩一样)。
非正常合并:从master分支修改了hello.txt,然后跳到hot-fix分支修改hello.txt,然后转到master分支将hot-fix分支合并,合并后的内容是两者修改内容的总和,而修改后内容的总和是master分支下的hello.txt,而hot-fix分支不发生改变。(这里不同于正常合并的内容,此时master分支的内容和hot-fix分支下的内容不一样)

在这里插入图片描述
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐