Git Flow

什么是 Git Flow

Git Flow 是 git 的一种工作流程规范,基于版本发布模式,主要是解决分支和 commit 混乱的问题

实际开发过程中,有多个协作人员参与开发同一个项目,期间产生的提交代码出现混乱和丢失,Git Flow 能很好解决这类问题

Git Flow 工作流程

长期存在的分支

  • 主分支 master(存放对外发布的版本)
  • 开发分支 develop (日常开发,存放最新的开发版)

三种短期分支,一旦完成开发,它们就会被合并进developmaster,然后被删除

  • 功能分支(feature branch)
  • 补丁分支(hotfix branch)
  • 预发分支(release branch)

分支介绍

Production 分支 / Master 分支

Master 分支用于存档记录保存使用

  • 只能合并其他分支到 Master 分支
  • 不能直接修改 Master 分支
  • 设置成分支保护模式

Master 分支

Develop 分支 / 开发分支

人员的主要开发迭代分支

Feature 分支 / 功能分支

作为单一开发新功能使用分支

  • 基于 Develop 分支创建
  • 功能完成后合并回 Develop 分支
  • 临时分支,生命周期随着功能开发完成而结束

Develop 分支

Release 分支 / 预发分支

发布一个新版本的时候使用

  • 基于 Develop 分支创建
  • 测试和修复测试 bug 存在,并上线版本
  • 完成后,合并到 Master 分支(存档)和 Develop 分支(同步修改)
  • 临时分支,生命周期随着功能开发完成而结束

Release分支

Hotfix 分支 / 补丁分支

用于维护和紧急问题的快速修复独立的分支

  • 基于 Master 分支创建
  • 完成后,合并回 Master 分支和 Develop 分支
  • 临时分支,生命周期随着功能开发完成而结束

Hotfix分支