GitFlow分支模型

GitFlow是一个适用于多版本并存项目的分支模型,包括master、develop、feature、release和hotfix分支。master分支用于正式发布,develop用于开发集成,feature分支开发新功能,release分支测试验证,hotfix分支紧急修复线上bug。所有分支需通过merge操作合并,并对master和develop进行权限保护。
摘要由CSDN通过智能技术生成


前言

GitFlow是一个优秀的分支模型,可在项目实施中直接应用。但它并不是万能的,其更适用于有多版本并存需求且具有一定规模的项目,项目组应该根据项目具体情况灵活的优化流程,或选择更精简的分支模型,如GitHub Flow。下面对GitFlow做详细说明。


GitFlow示意图:

分支规则

分支含义起始终止
master正式发布分支
该分支代码通过其他分支合并,不允许直接提交代码到该分支
git init
hotfix线上bug紧急修复分支Branch from masterMerge to master&develop
release-*预发布分支
该分支只允许进行bug修复,测试人员在该分支进行测试
Branch from developMerge to master&develop
develop开发集成分支Branch from master
feature-*新功能开发分支Branch from develop

主分支

每个仓库必须要存在 master 、 develop 两个主分⽀,并且 develop 源于 master 。

  • master 与 develop 分⽀必须要通过 branch permissions 进⾏保护,不允许直接 push,只能从其他分支merge
  • master 分⽀⽤于版本发布,发布的版本必须通过 git tag 打上版本号
  • develop 分⽀⽤于开发集成,所有的功能分⽀必须 checkout 于此分⽀,例如在develop分支下新建分支:git checkout -b feature-modul

功能分支

每位开发者对负责的功能模块创建⼀个对应的 feature 分⽀进⾏开发,最终 merge 到 develop 。

  • feature 分⽀必须 checkout 于 develop
  • feature 分⽀只允许 merge 到 develop

预发布分⽀

当需要发布⼀个版本到 master 分⽀时,必须要从 develop 分⽀ checkout 出⼀个新的 release 分⽀(如release-20200312)。并进⾏测试验证,测试通过后 merge 到 master 。

  • 此分⽀只允许修bug
  • 如果有修复bug,那么同时也要 merge 到 develop

Bug修复分⽀

发布版本中的分⽀发现 bug 时,必须要从 master 分⽀ checkout 出⼀个新的 hotfix 分⽀(如hotfix-20200314)。 bug 修复后 hotfix 分⽀要分别 merge 到 develop 和 master 。

  • 只允许 checkout 于 master
  • 要分别 merge 到 develop 和 master
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

魔希达

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

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

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

打赏作者

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

抵扣说明:

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

余额充值