Appearance

工作流程是指从创建、维护、提交、合并等开发的过程中的流程, 基本原则:远程仓库默认有 master 和 dev 两个分支
- master 为受保护分支,所有人可以 clone 或者 pull ,仅指定人员可对master进行 push 和 merge
- dev 为日常开发分支
日常开发阶段,从dev分支上 checkout 一个分支进行开发或者bug修复。分支命名规范:
- 分支版本命名规则:分支类型 分支发布时间功能。比如:
feat/20221115; - 分支类型包括:
feat、bugfix、refactor、hotfix四种类型,即新功能开发、bug修复、代码重构和紧急修复线上bug; - 时间使用年月日进行命名,不足2位补0,时间精确到分钟(可选);
- 分支功能命名(除master/dev之外)使用
slash case命名法,即斜杠命名; - 测试修复阶段,合并至
dev分支,并将代码push到线上dev分支,定期进行codereview,待分支功能上线,删除开发分支; - 线上紧急bug,从
master拉取hotfix分支; 修复完成后,合并回dev分支。
测试阶段,从dev分支上 checkout 一个分支留作测试阶段使用。分支命名规范:
- 分支类型包括:
sit、uat两种类型,即集成测试/内部测试、验收测试/产品需求测试; - 集成测试或内部测试完毕,从
sit分支上 checkout 一个uat分支用于验收或产品需求测试; - 全部测试完毕,合并至
master分支,并将代码push到线上master分支,最后在此分支进行tag打标签处理;
预发布阶段,打tag命名规范:
- 测试结束正式发布前但因各种原因不打算发布生产给用户使用的情况下,打rc版本tag,命名规则:
v1.2.0-rc或v1.2.0.221128-rc; - 测试结束正式发布前确定好生产分支后,打release版本tag,命名规则:
v1.2.2-release或v1.2.2,一般情况建议省略-release后缀; - 修复线上问题后,打fix版本tag,命名规则:
v1.2.2-fix。
完整环境分支
| 说明 | 分支环境 | 分支环境 | 分支环境 | 分支环境 |
|---|---|---|---|---|
| Git 仓库 | dev/feat | sit | uat | master |
| 运行环境 | 开发 | 集成测试/内部测试 | 验收测试/产品需求测试 | 生产/线上 |
| 自动部署 | - | - | - | - |
| jar包/npm包 | alpha(α) | beta(β) | RC | release |