Git的使用---6. 分支管理

1. 分支介绍

分支的简单的理解就是分身,就像孙悟空拔出猴毛变出很多跟自己一模一样的猴子,然后每个猴子做自己的事情互不干涉,等到所有猴子做完之后,猴子集合来合并劳动成果,然后悟空就把那些猴子猴孙门统统收回了。Git的分支也是一个杀手锏级别的功能!

为了和我们的实际工作更加接近,我们讲个世纪的例子,让大家体会一下分支:

比如:你现在正在a.php里面做新功能的增加,大约写了300行代码,突然,线上运行的代码爆出了一个bug,需要你放下一切手头工作,全力解决这个bug,你去检查后发现,原来是这个a.php,出了点bug,修改的话也就是20来行代码完事。

这时候问题来了:你从线上直接down下a.php修改的话,这个bug当时处理了,但是等前面的那个300行代码的后续工作做完,再传到线上的时候,就把这次的bug修改又覆盖掉了,bug依然会再次出现。如果你直接在你的开发版本上的a.php中修改的话,难保你新写的这300行代码不出新的bug。这时候咋办?

这时候,我们的分支概念就起效了,下面我们可以看一下流程:

image

2. 创建分支

git branch 分支名

git branch命令会列出所有分支,当前分支前面会标一个*号

3. 切换分支

git checkout 分支名

创建并切换到新分支,可以使用:

git checkout -b 分支名

4. 合并分支

git merge命令用于合并指定分支到当前分支,下面是一个例子:先切换到master分支,然后将新分支my合并到master分支

git checkout master
git merge my

如果合并时加上--no-ff参数,表示禁用Fast forward模式合并,如:

git merge --no-ff -m "merge with no-ff" my

合并分支时,加上--no-ff参数就可以用普通模式合并,合并后的历史有分支,能看出来曾经做过合并,而fast forward合并就看不出来曾经做过合并。

5. 删除分支

git branch -d 分支名

6. 删除有内容的分支

git branch -D 分支名

7. 分支管理策略

在实际开发中,我们应该按照几个基本原则进行分支管理:

首先,master分支应该是非常稳定的,也就是仅用来发布新版本,平时不能在上面干活; 干活都在dev分支上,也就是说,dev分支是不稳定的,到某个时候,比如1.0版本发布时,再把dev分支合并到master上,在master分支发布1.0版本; 你和你的小伙伴们每个人都在dev分支上干活,每个人都有自己的分支,时不时地往dev分支上合并就可以了。

image

转载于:https://www.cnblogs.com/forget0909-Angle-Qi/p/9564519.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值