代码管理规范
1. **生产环境分支**(master)
部署到生产环境的稳定代码。该分支不能直接提交代码,只能从***预生产环境分支***和**hotfix分支**合并代码。
每次代码合并需要增加版本号。该分支为长期分支。
2. **hotfix分支**(hotfix/xxx-yyy)
基于**生产环境分支**创建,修复**生产环境分支**发现的bug。修复完成后将代码合并到**生产环境分支**和**开发主分支**。
代码合并完成后删除该分支,该分支为短期分支。
3. ***预生产环境分支***(release/vx.y.z-(alphaK))
确定好版本号和要发布功能后,基于**开发主分支**创建。完成测试和bug修改后,
将该分支合并**生产环境分支**后删除或直接删除。该分支为短期分支。
4. **bugfix分支**(bugfix/xxx-yyy)
基于**预生产环境分支**创建,修复预生产环境分支代码bug。修复完成后将代码合并到**预生产环境分支**和**开发主分支**。
代码合并完成后删除该分支。该分支为短期分支,
5. **开发主分支**(dev)
包含所有要发布到下一个Release的代码。该分支不能直接提交代码,只能从**功能分支**、**hotfix分支**、
**bugfix分支**合并。该分支为长期分支。
6. ***功能分支***(feature/xxx-yyy)
该分支是日常工作最常用到的分支。从**开发主分支**创建,主要是用来开发一个新的功能,一旦开发完成,
合并回**开发主分支**分支后删除该分支。该分支为短期分支。
## 分支命名
分支名称根据分支类型添加前辍,xxx为该分支功能的简要描述或Jira中的任务追踪编号,yyy是Gitlab登录名。
## 分支创建
分支创建遵循单一职责原则,一个分支只实现一个功能或修复一个bug。不相关的代码**不得提交**在同一分支内。
## 代码提交
1. **代码不允许存在语法错误等低级错误。**
2. **代码提交的用户名和邮箱设置为公司Gitlab开通的用户名和邮箱。**
3. 单元测试尽量保证可以正常执行,并通过测试。
## 代码分并
代码合并时提交Merge Request,由指定人员代码评审合格后合并到分支。