Git分支管理

目前最流行的Git分支管理规范应该属git-flow莫属了,它的核心概念是版本发布,适用于项目的持续集成和频繁发布,这也是近些年使用Git的过程中一直使用的规范。

git-flow流程中有5类分支,分别是master、develop、relaese(发布版本)、feature(新功能分支)、hotfix(修复bug版本),这些分支都有各自的作用和生命周期,master是最稳定的分支,develop是一个新代码集成分支,所有发布后的代码都合并到develop,然后由develop合并到master,开发完成后在发布的时候创建release分支进行发布,在开发新功能的时候创建一个feature分支,生产上遇到需要修复的紧急bug时,创建一个hotfix分支。

分支名称规则:release/feature/hotfix-分支创建日期-分支版本号

分支类型 命名规范 创建自 合并到 说明
feature feature/* develop develop 新功能
release release/* develop develop 和 master 一次新版本的发布
hotfix hotfix/* master develop 和 master 生产环境中发现的紧急 bug 的修复

Git分支关系图

img
  • 对于不同的开发任务,需要在不同的分支上完成开发,开发完成后合并到develop分支进行测试,基本流程如下:

    1. 从develop分支创建一个feature分支:feature/cc-20200420-v1.0.1

    2. 在feature/cc分支上进行开发

    3. 开发完成后将feature/cc合并到develop分支

  • 在进行版本发布时的基本流程如下:

    1. 从develop创建release分支:release/cc-20200420-v1.0.1
    2. 将release/cc分支发布到测试环境进行测试,测试中出现的bug直接在release/cc分支上修改并提交
    3. 测试完成后合并到develop和master,并在master上打一个Tag
  • 在进行生产bug紧急修复时的基本流程如下:

    1. 从master创建hotfix分支:hotfix/cc-20200420-v1.0.1
    2. 验证完成后将hotfix/cc分支合并到develop和master,并在master上打一个Tag