以GitFlow分支模型为基准的Git版本分支管理流程

以GitFlow分支模型为基准的Git版本分支管理流程

文章目录

GitFlow分支模型中的主要概念

  • master分支:为生产环境运行分支代码,只能有一个

  • develop分支:主干分支,只能有一个

  • feature分支:特性分支,可以有多个,每个工作项一个分支

  • release分支:发布分支,可以有多个,测试用

  • hotfix分支:热修复分支,可以有多个,用于生产环境出现问题时快速修复

  • bugfix分支:发布分支时使用的bug修复分支

GitFlow的分支管理流程图

版本号说明

x.y.z-[state]

  • x.y.z 为各版本的序号
  • state 可选段,用来表示当前软件的状态。例如:b 表示bate版,即测试版。

x、y、z为非负整数

序号 说明
x 主版本号(major)无法向下兼容时,需要递增
y 次版本号(minor)新增新的特性时,需要递增
z 修订版本号(patch)修复问题时,需要递增

state的取值

  • alpha : 内测版,Bug多
  • beta :公测版,有缺陷
  • 没有state,代表正式版

借助插件Git Flow Integration Plus实现分支模型管理

  1. 配置Git Flow
  1. 在通过右下角的Gitflow插件开启分支。
  1. 提交本地变更
  1. 在通过右下角的Gitflow插件实现版本的合并。

  2. 推送至远程仓库,记得推送标记。

其他模型

TBD模型

TBD模型只有一个主分支(master)和多个发布分支(release),这种模式主要在集中式管理工具里使用的比较多,所有开发人员都在一个分支工作,并提交代码到一个分支,这种模式对开发人员的协调沟通要求较高。

阿里AoneFlow模型

AoneFlow模型是基于上述两种模型演变出来的一种新模型,核心内容如下:

  1. master分支: 1个 主干分支
  2. feature分支: 多个 特性分支
  3. release分支: 多个 发布分支

工作流程:

  1. 有新功能/缺陷时,基于master分支新建feature分支进行开发,
  2. 发布时,基于master分支新建release分支,并将本次需要发布的feature分支合并入release分支,并基于此release分支发布
  3. 将此release分支合并入master分支,并打tag标签 此操作发布前后进行都可以
  4. 线上突然出现bug时,基于master分支新建release分支,基于此release分支新建feature分支,修复后再合并入release分支,重复2.3步操作.
  5. 删除release分支,删除release分支关联的feature分支.

可以总结:

AoneFlow是通过release分支来关联feature分支来做分支管理的.

相关推荐
adjusttraining26 分钟前
毁掉孩子视力不是电视和手机,两个隐藏很深因素,很多家长并不知
深度学习·其他
小屋主人1 天前
【实用软件】UninstallTool:一个小巧、安全、快速、强大的卸载软件
经验分享·其他·软件·软件卸载
草莓熊Lotso1 天前
《算法闯关指南:动态规划算法--斐波拉契数列模型》--01.第N个泰波拉契数,02.三步问题
开发语言·c++·经验分享·笔记·其他·算法·动态规划
Wins_calculator2 天前
学了半年不知道怎么样了感觉距离理想还很遥远
其他
白鳯5 天前
《梅雨前后》唯美怀旧的江户风情挽歌
程序人生·其他·读书·感悟·梅雨前后·永井荷风
罗光记5 天前
低空基础设施新突破!优刻得 ×IDEA联合发布 OpenSILAS一体机
数据库·经验分享·其他·百度·facebook
D-海漠9 天前
S7-1200 作为 OPC UA 服务器,UA Expert 作为 OPC UA 客户端
其他
DeepNoMind9 天前
团队架构的月之暗面
其他
原创资讯9 天前
致同研究:授予知识产权许可的披露示例
其他
binary思维9 天前
用动漫形象制作虚拟主播并合成唱歌视频
其他