管理规范
主干分支:master、dev
辅助分支:feature、qa、release、版本分支、hotfix
单版本开发:
- 【master】:存放稳定版本的最新代码,master 只有 maintainer 具有 merge 权限,所有人无 push 权限。
- 【dev】:开发分支。
- 【feature/xxx】:特定的功能分支,从 master分支上创建,功能开发完成后合并到 dev 分支。
- 【hotfix/xxx】:针对 master 分支代码的紧急修复,测试通过后合并到 master 分支。
- 【qa分支】:测试分支
- 【release分支】:发布分支
多版本开发:
- 【master】:存放稳定版本的最新代码,master 只有 maintainer 具有 merge 权限,所有人无 push 权限。
- 【dev】:开发分支。
- 【feature/xxx】:特定的功能分支,从 master分支上创建,功能开发完成后合并到版本分支。
- 【hotfix/xxx】:针对 master 分支代码的紧急修复,测试通过后合并到 master 分支。
- 【release分支】:发布分支
- 【版本分支】:从master上拉取,以版本号命名,如2.8.0,测试分支和release分支的来源。
提交规范
【强制】提交信息规范
当前业界应用的比较广泛的是Angular Git Commit Guidelines,具体格式如下:
提交信息需保持统一的格式,每次提交的 commit message 必须包括 type、scope 和 subject 三部分。
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
type 定义如下:
名称 | 描述 |
---|---|
feat | 新功能 |
fix | 修复 bug,scope 内容请填写禅道/Teambition 中的 bug 编号 |
docs | 文档修改 |
style | 不影响代码含义的更改(空格、格式、缺少分号等) |
refactor | 重构,既不修复错误也不添加功能的代码更改 |
perf | 提高性能的代码更改 |
test | 添加缺失或校正现有测试 |
chore | 对生成过程或辅助工具和库的更改,如文档生成 |
示例:
feat(曲线分析): 图标区增加定位功能,异常片段增加偏离度排序
fix(QXAN-107): 提示语改为:没有分析项目,请添加
其他规范
【强制】只提交属于源代码的文件到仓库。
【强制】每次提交前请保证本地仓库为最新。
【推荐】每次提交尽量只包含单个方面的改动。
【强制】Tag 管理
每个迭代产品验收完成之后,上线发版阶段,在master分支上打上相关版本标签。命名规则为:发布版本号.RELEASE;如:v1.0.1.RELEASE。