title: git提交规范化 date: 2022-09-08 19:49:10 tags:
非规范痛点
- 多人合作开发,commit注释,随机编写规范提交格式
- 提交日志太多,无法查找(规范后可以过滤查找)
- 读不懂别人的提交日志 掌握提交语法
好处
git commit 规范的主要目的是为了规范化commit格式,使每次commit清晰指明本次提交的目的,备注信息以及影响范围
语法
git commit -m 'type(scope): subject'
commit格式
-
- type 必填
- scope 可选项,一般用户写入模块
- subject 陈述信息
head详解
关键字type | 说明 |
---|
feat | 新增功能 | fix | bug修复 | docs | 文档更新,README.md等 | style | 不影响程序逻辑的代码修改(修改空白字符,格式缩进,补全缺失的分号等,没有改变代码逻辑) | refactor | 重构代码,不是修改不bug,也不是新增功能feart | perf | 性能, 体验优化 | test | 新增测试用例或是更新已存在测试 | build | 修改构建系统,例如(gulp rollup webpack)等配置文件修改 | ci | 修改持续集成文件,例如:ravis,Jenkins,GitLab CI,Circl 等提交 | revert | 回退版本到某个更早提交 | chore | 没有上述变动,其他;例如需修改test src目录 打包发布前,提交用chore | depc | 升级依赖 |
练习测试
例如:新增功能首页 git commit -m 'feat(Home): 新增首页功能' 例如:修改详情页bug git commit -m 'fix(Detail): 修改bug'
例如:打包发布button组件 git commit -m 'chore(all): 打包发布button组件'
过滤查找
git log --pretty=oneline --grep=feat
git分支命名规范
分支 | 命名 | 说明 |
---|
主分支 | master | 主分支,所有提供给用户使用的正式版本,都在这个主分支上发布,不能直接在该分支上开发 | 开发分支 | dev | 开发分支,永远是功能最新最全的分支,该分支只做只合并操作,不能直接在该分支上开发 | 功能分支 | feature-xxx | 功能开发分支,在develop上创建分支,以自己开发功能模块命名,功能测试正常后合并到develop分支 | 预发布分支 | release-xxx | 发布定期要上线的功能,它是指发布正式版之前,(即合并到Master分支之前),我们可以需要有一个与发布版本进行测试。预发布分支是从Dev分支上面分出来的,预发布结束后,必须要合并进Dev和Master分支 | 修复分支 | fix-xxx | 功能bug修复分支,feature分支合并之后发现bug,在develop上创建分支修复,之后合并回develop分支 | 紧急修复分支 | hotfix-xxx | 紧急bug修复分支,在master分支上创建,修复完成后合并到master |
|