目標:對項目開發人員的每次
commit
書寫格式進行自動校驗css
1 主要有如下組成git
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>
複製代碼
2 具體說明github
經常使用的修改項npm
例如本次開發實現了用戶登陸的功能;則
commit
提交樣式以下:json
feat(login): add login feature
1.mobile login
2.email login
3.find password
複製代碼
能夠使用Commitizen
代替 git commit 能夠使用cz-cli工具代替 git commitgulp
全局安裝,並在項目根目錄初始化安裝性能優化
yarn add -g commitizen cz-conventional-changelog
commitizen init cz-conventional-changelog --yarn --dev --exact
複製代碼
then some change in your package.json
bash
"config": {
"commitizen": {
"path": "./node_modules/cz-conventional-changelog"
}
}
複製代碼
全局安裝後使用git cz
代替 git commit
就能夠了。工具
commitlint
1.安裝工具
npm install -g @commitlint/cli @commitlint/
複製代碼
2.生成配置文件commitlint.config.js
config-conventional
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js
複製代碼
項目根目錄下建立commitlint.config.js
這個文件,並配置
module.exports = { extends: ["@commitlint/config-conventional"] };
複製代碼
husky
工具yarn add -D husky
複製代碼
2 配置husky
校驗規則 //package.json
"husky": {
"hooks": {
"commit-msg": "commitlint -E HUSKY_GIT_PARAMS"
}
}
複製代碼
由此就能夠實現每次提交
git commit
時候自動校驗commit
的書寫是否符合規範。