git hooks——commit message 校验
git是现在最流行的版本控制工具,书写良好的commit message能大大提高代码维护的效率。但是在日常开发中由于缺少对于commit message的约束,导致填写内容随意、质量参差不齐,可读性低亦难以维护。在项目中引入commit message规范已是迫在眉睫。
提交规范
源于 Angular 规范
提交格式
<type>(<scope>): <subject>
commit message 示例:
1
feat(数据中心): HS001 增加订单列表
type 选项
- feat:新功能(feature)
- fix:修补bug
- docs:文档(documentation)
- style: 格式(不影响代码运行的变动)
- refactor:重构(即不是新增功能,也不是修改bug的代码变动)
- test:增加测试
- chore:构建过程或辅助工具的变动
- perf: 性能提升变更
- ci : 持续集成变更
- build : 代码构建变更
- temp : 临时代码
scope
- 变更范围(粒度较小,并在一想 项目中保持一致):例如页面名称、模块名称、组件名称……
subject
- 简短的描述
添加 hook
- 在目前添加在本地的
git hook
中,校验阶段是commit-msg
阶段。脚本内容如下:
1 |
|
- 添加目录
将上面的脚本保存成 commit-msg
文件,然后进行以下操作。
工程.git
目录 -> hooks -> commit-msg
hooks 目录中会存在 commit-msg.sample,这是 git 的 hook 参考文件。
全局添加
如果每个工程的 .git
目录下的 hooks
都添加一遍会过于繁琐,使用全局的会很省事(可选)。
在
home
目录下创建.git_hook
目录1
mkdir ~/.git_hooks
复制
commit-msg
文件到上面创建的.git_hook
目录下1
cp comit-msg /.git_hooks
全局添加该脚本
1
git config --global core.hooksPath ~/.git_hooks