背景
关于git工作流网上介绍的规范有很多,最基本的有Git Flow、GitHub Flow、GitLab Flow,规范各有各的优缺点,在不同的团队中有其使用的场景。在我们的开发团队中,分支管理规范在人员数量、项目复杂情况下分支管理规范也不尽相同,选择最适合自己团队的、或者组合出自己的分支管理规范才是最优答案。
介绍
在本人过往的开发经验中,关于分支管理有两种是相对来说比较实用,一种应对团队人少、项目开发需求规划稳定传统的开发模式,另一种是应对敏捷开发、需求在开发过程中变动比较大、人员组成比较复杂的开发模式。
在团队中git工作流制定的目的是为了团队成员间代码工作流、定制核心是团队协作协作。
git分支管理规范
- 瀑布模型团队分支管理
小型团队使用传统的开发模式,产品迭代的版本、功能更新都有固定的周期,并且属于开发可控,版本目的制定之后,一般不会改变。所以该模式下开发需求不会出现需求临时变更、替换、加插的情况。
该分支管理优势:
1、开发操作分支合并的操作少
2、开发到生产环境链路端
3、介入流程的成员角色少
- 敏捷团队分支管理
在有一定规模的敏捷开发团队的中,需求都为了尽早上线、减少更改成本,耗时时间长、工作量大的需求会被拆分成若干需求、若干版本目标。负责开发需求的也有可能由若干成员负责。如果开发过程中需求优先级、或者实现目标阶段版本变更,可快速切换开发分支。开发完成的需求统一合并至测试分支,当确定需求需要上线时,特性分支才可合并到预发布分支,验收通过后,才可合并到生产分支。
该分支管理优势:
1、支持多需求并发开发
2、支持敏捷开发过程中需求加插、替换
3、关键节点需要关键人员介入,管理人员更容易把握需求需求情况