Git Commit Message
2019-07-30 本文已影响0人
Edtion
前言
最近和朋友合作一个项目,引入了很多规范,发现了团队合作的git commit提交规范,于是踩了半天的坑,最后终于配置完成。在这里记录一下可用过程。
提交代码采用Commitizen规范性提交模板,提交信息校验则是用Commitlint+husky,规范是angular的规范。
安装Commitizen
cd
到工程目录下
如果没有package.json
文件,先运行
npm init
全局安装
npm install -g commitizen cz-conventional-changelog
echo '{ "path": "cz-conventional-changelog" }' > ~/.czrc
全局模式下, 需要 ~/.czrc 配置文件, 为 commitizen 指定 Adapter.
项目级安装
npm install -D commitizen cz-conventional-changelog
安装Commitlint+husky
安装Commitlint
npm install --save-dev @commitlint/config-angular @commitlint/cli
或
npm install --save-dev @commitlint/{config-angular,cli}
@commitlint/config-angular
是可变项,
具体参考conventional-changelog/commitlint,这里采用angular
规范。
官方分享的规范:
@commitlint/config-angular
@commitlint/config-conventional
@commitlint/config-lerna-scopes
@commitlint/config-patternplate
配置lint规则
echo "module.exports = {extends: ['@commitlint/config-angular']}" > commitlint.config.js
需要注意:如果之前安装的时候采用
config-angular
,那么下面的配置也要用config-angular
,如果上下不一致会报错
安装套件husky(githook插件)
npm install --save-dev husky
添加husky
配置,打开package.json
文件,添加如下几行代码:
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
}
温馨提示:添加上面这段配置时,别忘了在上一个配置的
}
后面加上,
好了,去玩耍吧。