Gitflow 分支规范

Gitflow 分支规范支持 master、develop、feature/、 release/、hotfix/* 分支

分支类型

分支类型 分支名匹配规则 描述 环境
主干分支 [主干分支] 与仓库设置 > 分支设置中的默认分支保持一致。
开发分支 develop 平时开发用的主分支,永远是功能最全最新 DEV
功能分支 feature/* 一般一个事项卡对应一个功能分支 DEV
发布分支 release/* 一般一次新版本的发布对应一个发布分支 PRE、PROD
热修复分支 hotfix/* 从主干分支拉出,用于线上版本的 Bug 修复 DEV

1、主干分支

master 为主干分支,不适用于任何环境,主要用于保持最新代码版本,一般由 release/*hotfix 分支合并,任何情况下不允许直接在 master 分支上修改代码。

开发分支

develop 为需求开发合并分支,用于部署到开发环境(DEV),用于合并多个开发人员的分支,将包含最新的代码,但是也是未经测试的版本,可能存在的bug会比较多。

功能分支

feature/* 为需求开发分支,用于需求的版本迭代,一旦该需求上线,便将其删除。

发布分支

release/* 为发布分支,用于部署到预发环境(PRE)和正式环境(PROD),始终保持与 主干分支(master) 分支一致,一般由 功能分支(feature/*)热修复分支(hotfix/*) 分支合并,不允许在发布分支上直接修改代码。

如果在 发布分支(release/*) 分支测试出问题,需要回归验证 测试分支(test) 看否存在此问题。

热修复分支

hotfix/* 为紧急修复分支,命名规则为 hotfix 开头。

当线上出现紧急问题需要马上修复时,需要基于 release/*master 分支创建 hotfix 分支,修复完成后,再合并到 发布分支(release/*)主干分支(master)开发分支(develop) ,一旦修复上线,便将其删除。

合并方向

规范仓库分支间的合并方向,只允许创建列表中规定方向的合并请求,列表为空则不会对仓库中的合并请求方向做限制。

源分支 目标分支 图示
发布分支 主干分支 release/* -> [主干分支]
热修复分支 主干分支 hotfix/* -> [主干分支]
功能分支 开发分支 feature/* -> develop
发布分支 开发分支 release/* -> develop
热修复分支 开发分支 hotfix/* -> develop
作者:Jeebiz  创建时间:2022-08-31 10:14
最后编辑:Jeebiz  更新时间:2024-08-04 15:41