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的已经被修改了。

相关推荐
gwf21611 小时前
SSD读写速度深度解析:顺序读写vs随机读写、IOPS、延迟,你的硬盘性能到底怎么看?
git·嵌入式硬件·缓存·github·智能硬件
西邮彭于晏11 小时前
图文详解:Git分支创建、合并与冲突解决|新手零门槛完整教程
大数据·git·elasticsearch
nuisthou16 小时前
git常用命令总结
git
西邮彭于晏16 小时前
Git 标签(Tag)与版本发布完整指南|附全场景命令速查表
大数据·git·elasticsearch
潘正翔17 小时前
k8s进阶_Harbor镜像仓库
git·云原生·容器·kubernetes·gitee·github
InfinitePlus19 小时前
Git基本操作-命令行
git
茉莉玫瑰花茶19 小时前
TCP 全连接队列与 tcpdump 抓包
git·github·tcp·tcpdump
炸膛坦客21 小时前
Git 和 GitHub:(十四)rebase 到某个有新提交的远程仓库的分支
git·github
炸膛坦客1 天前
Git 和 GitHub:(十二)基于远程仓库的某一个分支的某一笔提交创建新分支
git·github
炸膛坦客2 天前
Git 和 GitHub:(十三)改分支名
git·github