Git(5)——Git分支

一、简介

在Git(4)中,我们已经对已学习的Git命令做一个总结,接下来将引入一个新的概念分支,本篇文章将用一个基于分支修复bug的案例来介绍Git分支的概念和用法

二、案例

①使用如下命令可以查看当前Git所在分支

git branch

可见当前我们所处的分支为master

②使用如下命令可以创建新的分支

git branch 分支名称
例如:
git branch dev

 

创建完成后,使用git branch查看分支可以发现多了一个名为dev的分支

③使用如下命令切换到dev分支

git checkout dev

 

使用git branch命令可以看到当前的分支已经切换到了dev

④修改txt文件,新增商场功能

⑤提交代码到dev分支

命令如下:

git add .    # 提交代码到暂存区
git commit -m "商场开发50%"    # 从暂存区提交到版本区生成版本
git log    # 查看git版本提交记录

 通过版本提交记录可以发现,当前的版本指针指向dev分支,而master分支的代码还停留在"约饭功能新增"上

⑤此时问题来了,假设现在商场开发已经开发了50%,并且已经耗费了开发工程师一个月的时间,但是现在发现约饭功能出现了严重的bug需要修复,基于现在所学的知识,我们只能将版本切换回master分支然后修复bug,那开发了一个月的商场功能的代码将会被直接覆盖,相当于一个月白干,如何避免这样的问题发生?git的分支管理便可以很好的解决这个问题

⑥使用如下命令切换回master分支,并创建修复bug的分支

git checkout master
git branch bug

⑦切换到bug分支,并在txt文件中修改bug,命令如下:

git checkout bug

 

⑧使用如下命令,将代码提交到bug分支

git add .
git commit -m "约饭功能bug修复"

 

⑨此时bug已经修复,但这仅针对于bug分支,而正式面向用户的master分支还未修复bug,因此现在我们需要用到Git的合并功能,命令如下:

git checkout master    # master分支合并代码,首先就要先切换回master分支
git merge bug

 

此时在查看master分支下的txt文件

 

可见已经同步了bug分支下的代码,成功修复bug

⑩此时的bug分支其实对于我们来说已经没有用了,因为它仅是我们用于紧急修复bug创建的分支,因此现在需要把这个分支给删除,命令如下:

git branch -d bug

 

使用git branch查看当前分支发现bug分支已经被删除了

⑪当前的商场功能还未开发完毕,因此我们需要将分支重新切换到dev分支,命令如下:

git checkout dev

⑫查看dev下的txt文件,它现在的约饭功能会是已经修复bug的版本吗?

可见,在dev分支上并没有将约饭功能的bug修复,原因在于创建dev分支时,是基于约饭功能新增的版本创建的,后续再master分支上的操作并不会影响到dev分支,这就是分支的隔离性

⑬当我们把商场功能开发完后,所做的事情便是提交到dev分支生成新的版本,然后切换到master分支进行合并,命令如下:

git add .
git commit -m "商场功能开发完毕"
git checkout master
git merge dev

 

我们发现在最后git merge合并dev代码的时候报冲突了,原因在哪呢? 

⑭查看当前的txt文件

我们发现两种约饭功能都同时存在,我们现在肯定是想要上面bug功能已修复的代码,那应该如何操作呢? 

⑮具体的方法就是我们去手动解决冲突,将txt文件修改成如下样式:

⑯最后在提交代码到版本区生成新的版本,命令如下

git add .
git commit -m "商场功能开发完毕并解决合并冲突"
git log

 

以上便是Git分支的一个小案例,希望大家通过该案例能够有所收获

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Hemameba

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

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

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

打赏作者

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

抵扣说明:

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

余额充值