背景:
因团队代码提交不规范,所以需要对git提交的信息经行校验,也可以方便生成change log。

安装

# Install commitlint cli and conventional config
npm install --save-dev @commitlint/{config-conventional,cli}
# For Windows:
npm install --save-dev @commitlint/config-conventional @commitlint/cli

项目根新建配置文件
commitlint.config.js
注意:
使用 commitlint 时报错:commitlint.config.js:1 SyntaxError: Invalid or unexpected token
原来是因为用 echo “module.exports = {extends: [‘@commitlint/config-conventional’]}” > commitlint.config.js 这条命令
生成的 commitlint.config.js 文件不是 utf8 格式的,将文件转成 utf8 格式的就没问题了

# Configure commitlint to use conventional config
echo "module.exports = {extends: ['@commitlint/config-conventional']}" > commitlint.config.js
or 手动添加
module.exports = {extends: ['@commitlint/config-conventional']}

安装husky并激活
(如果在配置eslint commit校验已经安装就不需要)

# Install Husky v6
npm install husky --save-dev
# or
yarn add husky --dev

# Activate hooks
npx husky install
# or
yarn husky install

添加钩子
(也许命令无效)

# Add hook
npx husky add .husky/commit-msg 'npx --no -- commitlint --edit "$1"'
# Sometimes above command doesn't work in some command interpreters
# You can try other commands below to write npx --no -- commitlint --edit $1
# in the commit-msg file.
npx husky add .husky/commit-msg \"npx --no -- commitlint --edit '$1'\"
# or
npx husky add .husky/commit-msg "npx --no -- commitlint --edit $1"

# or
yarn husky add .husky/commit-msg 'yarn commitlint --edit $1'

需要手动添加

1.添加一个空文件
npx husky add .husky/commit-msg ""   

2.找到.husky/commit-msg
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

undefined 替换=> npx --no -- commitlint --edit $1

到这里就结束了,根据你的需求修改对应的配置即可实现在git提交前对commit规范校验。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐