Git分支操作实战 | 青训营笔记

136 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第5天

上期我们已经实战过了如何在一个单一时间线进行版本回溯,这期我们正式进入分支的实战操作,来看一看这个神奇的分支功能如何在命令行中实现。

可以结合之前的理解层面的git分支笔记来看,这样可以加深记忆,便于领悟。

一、创建分支

还是以之前的temp目录下的hello.txt为例。我们右键调出git bash来打开命令行

image.png

注意到右边有一个蓝色小字master,这就代表当前状态下head指针指向的哪个分支。用之前的平行宇宙理解法,代表现在我们在哪个宇宙,在哪个时间线。

使用git branch命令来创建我们的分支,也就是创建一个时间线。

image.png

我们把这个分支命名为next。在命令后面加上名字就行。没有回复,经典的没有反应就是没有问题,就是成功

接下来可以使用git checkout next来切换当前head指针指向的分支。也就是跳转时间线,相当于去了一个别的宇宙。

image.png

这里有反馈了,别慌,反馈显示的内容是成功的。

注意,git branch命令如果后面不加参数,就是代表“查看当前分支”而不是创建分支了

image.png

绿色标出的是当前的“宇宙”,白色的是“平行宇宙”。同时当前分支前面还会加一个星号。

我们可以在next分支上提交文件。不会影响主分支。比如我们再修改一下hello.txt文件

image.png

一套comb提交文件进git仓库

image.png

此时我们切换回原来的宇宙,主分支master,来看看到底是不是两个宇宙:

git checkout master来实现

image.png

切换成功

image.png

刚刚加的那句话已经没了。说明这两个宇宙真的“平行”,没有交集。

如果要有交集呢?怎么让他们产生联系呢?

那必然是可以的,平行宇宙法只是用来复制理解而已,事实上git的分支就是为了主分支而生的,最终都是要合并到一起的,不然对开发有什么意义呢。

我们用git merge命令来实现,命令后面跟上合并的分支名

image.png

合并完成,再看看txt文件

image.png

熟悉的话语又出现了。

之后就可以愉快地删掉我们地next分支了。命令行语句为:git branch -d next这里的next可以替换成你所要删除分支的名称。

image.png

小贴士,同上面-d来删除一样,git checkout可以加-b来实现创建切换同时进行,效果相当于git branchgit checkout两条命令

image.png

于此,分支就基本不在话下了吧~