关于Git Flow

Git Flow(也叫Gitflow)是一套结构化的Git分支管理工作流‌,最早由Vincent Driessen提出推广,核心为不同分支赋予明确角色,规范了代码开发、发布和修复的完整流程,非常适合有固定发布周期的大型项目使用。

核心分支体系

Git Flow 将分支分为两类:‌两个永久主分支‌ + 多个临时辅助分支,分工清晰互不干扰:

表格

分支类型 作用说明 分支规则

master(主分支) 永久存在,始终保存‌生产环境可发布的稳定代码‌ 禁止直接提交修改,所有更新都来自其他分支合并,每次发布需要打上对应版本标签

develop(开发分支) 永久存在,是功能开发的集成分支,始终包含下一个待发布版本的全部功能 接收功能分支、热修复分支的合并,作为日常开发的主干

feature/xxx(功能分支) 临时分支,用于开发新功能 从develop分支分出,开发完成后合并回develop分支,合并后可删除,禁止直接与master交互

release/xxx(发布分支) 临时分支,用于版本发布前的准备 积累足够功能后,从develop分出,仅修复发布前发现的Bug,不再新增功能;测试完成后同时合并到master和develop,完成发布后可删除

hotfix/xxx(热修复分支) 临时分支,用于快速修复线上生产环境的紧急Bug 唯一直接从master分出的辅助分支,修复完成后同时合并回master和develop,并在master打新版本标签,修复完成后可删除

完整工作流程

项目初始阶段,从master分出develop作为日常开发主干;

开发新功能:从develop切出feature分支,开发完成后合并回develop;

准备发布:从develop切出release分支,进行最终测试和Bug修复;

正式上线:将release分支合并到master打版本标签,同时同步更新develop;

紧急修复线上问题:从master切出hotfix分支,修复完成后合并回master和develop,重新打标签。

适用场景与优缺点

Git Flow结构严谨,角色清晰,能让团队多人协作开发变得更有序,但分支操作更复杂,更适合:

有固定发布周期的传统项目‌:例如大型客户端软件、需要多版本维护的项目

规模较大、协作人数多的团队‌:流程规范能降低沟通协作成本

它不适合持续交付、小版本快速迭代的互联网项目,这类场景更推荐轻量的GitHub Flow。

相关推荐
imDwAaY9 小时前
6篇文章讲清楚Git:Git 远程协作:fetch、pull、push 到底有什么区别?(3/6)
git·后端
imDwAaY9 小时前
6篇文章讲清楚Git:Git 撤销与恢复:reset、revert、restore 应该怎么选?(4/6)
git
用户73309646123099 小时前
再也不怕手滑丢代码!给 git 高危操作加一层安全校验
git
广白9 小时前
Git Tag 实战:从出包追溯到版本发布
前端·git·面试
Winlifes6 天前
我给 Codex 做了一个 Git 面板:分支树、提交历史和工作区操作
git
郑州光合科技余经理7 天前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
我命由我123457 天前
Git 推送报错:error: src refspec main does not match any
运维·git·gitee·github·运维开发·学习方法·版本控制
Lcr3s7 天前
Git基础之(0):如何在Ubuntu(Linux)上安装git
git
玄芯散人8 天前
【筑基·058】Git协作工作流:冲突解决和PR流程
git·版本控制·团队协作
寺中人8 天前
Git 版本控制完全入门指南:从安装到实战,提交 + 分支 + 协作 + 冲突解决全拆解
git·开发工具·版本控制·团队协作·代码管理