Android修炼系列(36),记一次代码分支管理规范的实践

826 阅读1分钟

近期组里对于项目分支的管理做了一些更细的规范,经过一个版本使用,效果不错,特此记录。希望能对大家有所帮助。

需求开发阶段:

从 develop 拉取 feature 分支开发,在对应版本提测日(封板)前,走流水线 MergeRequest (下文简写 MR) 合回 develop,不允许直接 push,这里流水线目前是在蓝盾平台上,配置了自动代码扫描、单元测试编译,单测覆盖率拦截、自动化测试、集成测试等步骤。

image.png

集成测试阶段

封版后,从 develop 分支拉取对应版本的 release 分支,在 release 分支进行集成测试和集成测试中的 bug 修复。

集成测试中的 bug 要拉取 bugfix/* 分支进行 bug 修复,修复后 MR 回对应分支

在多版本同时开发时,上一版本封版拉取 release 分支后,下一版本需求可 MR 回 develop

image.png

发布阶段

集成测试全部通过后,可从对应 release 分支发布版本

发布成功后,打对应 TAG

合并回 develop 分支

见上图红色部分

线上bug修复阶段

在对应的需要修复的 release 分支拉取 hotfix/*,进行 bug 修复,MR 回对应分支

测试通过后,可从对应 release 分支发布小版本

发布成功后,打对应 TAG

如果当前分支是修复该 bug 的最新分支,则合并回 develop 分支;否则,不合回

image.png

原则上,线上 bug 修复应该由最新的 release 分支修复后合回,如同个 bug 在 1.0 和 1.1 分支都要修复,我们只需要从 release 分支拉取对应 bugfix 分支,修复完合回 release 分支,并只将 release/1.1 合回 develop 即可。

好了,就这些了。

完。