Git分支

文章目录


一、Git分支

Git分支就像是一棵大树的分叉。

  • 主干(main/master):是项目最稳定的主线路。
  • 分支:相当于从主干分出来的一条平行小路。

作用:让你可以在小路上瞎折腾(写新功能、修bug),完全不用担心影响主干。折腾好了,再把小路接回主干(合并)。

折腾坏了,直接删掉分支重来,主干毫发无损。

简单说:分支就是帮你把"实验"和"正式"隔离开的工具,方便多人同时干活不出乱子。

二、分支的操作

2.1 查看分支

git branch -v 即可查看分支

可以看出当前只有一个分支

2.2 创建分支

如果当前项目出现问题,需要紧急添加热补丁,就加一个 hot-fix 分支

git branch hot-fix 即可添加成功

2.3 切换分支

上面图片可以看到后面的(蓝括号)里写的master,表示当前还在master分支,如何切换分支呢?

git checkout hot-fix

此时我们在hot-fix这个分支上去修改文件内容

再查看master分支下的文件内容:

发现是不一样的,所以接下来我们看如何合并分支。

2.4把指定的分支合并到当前分支上

正常合并,比如现在在master分支下,我需要把hot-fix分支下的文件合并到master分支下:
git merge hot-fix

可以发现,这里master分支下的文本内容已经变为hot-fix下的了。

2.5 冲突合并

什么时候会出现冲突呢?

这里我先在master分支下添加一行:

然后去hot-fix分支下添加不一样的修改

就是我在master没空行加了一行,在hot-fix下空行加了一行。

接着切换到master分支去合并

发现起冲突了,因为两个分支都做了修改,git 不知道用哪一个。

此时我们 vim 打开文件,发现已经给我们已经标出来当前分支哪里做了修改,冲突分支哪里做了修改

此时我们需要在这个文件里做修改。

然后提交,这里注意,提交不要再加文件名了。

此时的情况是,hot-fix并未修改,而master的已经被修改了。

相关推荐
Ws_17 小时前
Git + Gerrit 第二课:diff、暂存区与撤销修改
git
snowjlz18 小时前
鸿蒙版SVN来了!!!
git·svn·版本控制
2401_8769641320 小时前
27考研余炳森概率论|喻老李良2027资料网课
windows·git·考研·svn·eclipse·github·概率论
爱搬砖的狮子20 小时前
【Git】git repo下载使用
git
cheems95271 天前
Git基本操作
git
Irissgwe1 天前
三、Git 文件状态管理:add、commit、status 和 diff
git
Ws_1 天前
Git + Gerrit 第三课:分支、切换与合并
git·elasticsearch
xlq223221 天前
6.git
git
Drache_long1 天前
Git命令概述
git
console.log('npc')1 天前
修改git中commit内容
git