【Git版本管理工具】分支管理--企业级讲解

本文详细介绍了Git中的分支概念,包括理解分支、创建和切换dev分支、合并策略(Fast-forward和普通模式)、处理合并冲突,以及gitstash的使用。还讨论了分支管理的最佳实践和特殊情况,如临时分支的创建、删除和冲突解决方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

🍁你好,我是 RO-BERRY
📗 致力于C、C++、数据结构、TCP/IP、数据库等等一系列知识
🎄感谢你的陪伴与支持 ,故事既有了开头,就要画上一个完美的句号,让我们一起加油


1.理解分支

本章开始介绍 Git 的杀手级功能之一(注意是之一,也就是后⾯还有之二,之三……):分支。分支就是科幻电影里面的平行宇宙,当你正在电脑前努力学习 C++ 的时候,另一个你正在另一个平行宇宙⾥努力学习 JAVA。
如果两个平行宇宙互不干扰,那对现在的你也没啥影响。不过,在某个时间点,两个平行宇宙合并了,结果,你既学会了 C++ 又学会了 JAVA!

在这里插入图片描述

在版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就可以理解为是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即 master 分支。
再来理解⼀下HEAD,HEAD 严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD 指向的就是当前分支。

那么分支在git仓库里面是如何体现出来的呢?
在这里插入图片描述

其中间的关系就是
HEAD指向master
master指向最新一次的提交

在这里插入图片描述

我们的git的所有提交可以串成一条线,这个提交时间线就相当于我们的分支

在这里插入图片描述


2.创建分支

在创建分支之前,我们先来看看我们仓库是有哪些分支存在的
我们可以使用branch命令,他是可以显示出我们当前仓库有哪些分支的
这里可以看到我们有且只有一个分支,那就是master分支
在这里插入图片描述
在我们创建git仓库的时候,master分支就会默认创建

在这里我们解释一下我们之前讲过的HEAD指针
不是一直讲的都是HEAD指针指向master指针吗?
HEAD指针其实可以指向其它分支的,被指向的分支就是当前正在工作的分支
就是因为我们只有master分支所以HEAD只能指向master

我们接下来来创建我们的第一个分支
我们使用

git branch dev

就可以创建一个dev分支出来了
在这里插入图片描述
当我们创建新的分支后,Git 新建了⼀个指针叫 dev, * 表示当前 HEAD 指向的分支是 master 分支。
我们再来看一下git目录下的文件
在这里插入图片描述
我们会发现git里refs文件下heads里不在只有我们的master文件了,还有我们新创建的dev

另外,可以通过目录结构发现,新的 dev 分支:
在这里插入图片描述
发现目前 dev 和 master 指向同一个修改。并且也可以验证下 HEAD 目前是指向 master 的。
用图来帮忙我们理解:
在这里插入图片描述


3.切换分支

我们想要在我们的dev上操作,那我们就需要把我们的HEAD指向dev,这样才能把dev变成我们的当前的工作分支
那么我们如何做呢?
使用 git checkout 命令即可完成切换,⽰例如下:
在这里插入图片描述
我们来验证一下我们的HEAD指针
在这里插入图片描述
我们发现 HEAD 已经

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RO-BERRY

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值