Git分支管理规范
分支分类
- 根据生命周期区分
- 主分支:master,develop;
- 临时分支:feature/_,release/_,hotfix/*;
- 根据用途区分
发布/预发布分支:master,release/*;
开发分支:develop;
功能分支:
feature/*;
- 热修复分支:hotfix/*;
分支用途
master 分支
master 分支主要方稳定、随时可上线的版本。这个分支只能从别的分支上合并过来,一般来讲,从 develop 上合并,或者从 bugfix 分支上合并过来。不能直接在 master 分支上进行 commit 文件。因为是稳定的版本,所以每次版本发布都要在这个分支上添加标签
(tag)。
develop 分支
develop 分支是所有开发分支的母体,所有的开发分支都要从 develop 上切出来,开发完成之后最后都要合并到 develop 上。
hotfix 分支
命名规则:hotfix/*
–> hotfix/v+bug修复的版本号
hotfix 分支用来修复生产中的紧急 bug,由于 develop 分支尚处于开发过程中,代码不稳定,不能直接应用于生产。所以从 master 分支上切出一个分支,修复完成之后合并到 master 分支,并且合并到 develop 上。
release 分支
命名规则:release/*
–> release/v+发布的版本号
release 分支可以称之为预发布的版本。当我们认为 develop 版本的代码已经趋于成熟,我们可以打一个 release 分支。在 release 分支上测试完成之后,要将代码合并到 master 分支和 develop 上。master 分支是线上版本,而合并到 develop 版本是因为,在测试过程中,一些细节的东西可能会修改,因此这些优化的内容也应该合并到最终版本以及开发版本中。
feature 分支
命名规则:feature/*
–> feature/功能名称
feature 分支是最经常使用的分支了。当我们收到一个新的开发功能时,应该在 develop 分支上切出一个 feature 分支。用来完成新功能的开发,开发完成之后,要合并进 develop 分支上。