git 规范
1、命名
master: master 分支用于线上环境使用
release: release 分支用于测试环境
develop: develop 分支用于开发环境
feature: feature 分支用于本地开发特性分支(从 master 检出),命名规范 feature/tapd#{id}
hotfix: hotfix 分支用于紧急发布(从 master 检出),命名规范 hotfix/tapd#{id}
bugfix: bugfix 分支用于修复线上 bug(从 master 检出),命名规范 bugfix/tapd#{id}
2、流程
- 所有需求、bug 都从 master 检出开发分支
- 完成开发自测通过后将个人分支合并至 develop 分支并打包通知测试
- 测试通过后通知研发将个人分支合并至 release 分支(如有 bug 则在个人分支上进行修复并重新合至 develop 分支)
- 测试把控打 release 包的时机
- 产线验证通过后将 release 分支合至 master
- 定期清理分支
3、commit message (建议)
建议以 Angular 为例:
<type>(<scope>): <subject><BLANK LINE><body><BLANK LINE><footer>
举个例子:docs(changelog): update changelog to beta.5,对应解释如下
- docs 对应修改的类型,即文档更新。
- changelog 是影响的范围,即 changelog 文件。
- subject 是对应的事件,即提交的相应内容。
type 相关参数如下:
- build:影响构建系统或外部依赖关系的更改(示例范围:gulp、npm 等)
- ci:更改持续集成文件和脚本(示例范围:Travis、Circle、BrowserStack、SauceLabs)。
- docs:只是更改文档。
- feat:添加一个新功能。
- fix:修复某个错误。
- perf:修复某个错误。
- refactor:代码更改,既不修复错误也不添加功能。
- style:不影响代码含义的变化(空白、格式化、缺少分号等)。
- test:添加缺失测试或更正现有测试。