husky配合commitlint,规范我们的git的提交记录

116 阅读1分钟

虽然我们已经要求项目使用 elint了,但是不能保证组员提交代码之前都将 elint中的题解決掉了,我们希望保证代码仓库中的代码都是符合 elint规范的 这时husky就解决了这个问题 它可以防止使用 Git hooks 的一些不好的 commit 或者 push。

安装

npm install --save-dev husky @commitlint/cli @commitlint/config-conventional

配置

  1. 初始化husky
npx husky install
  1. 添加 commit-msg 钩子,执行信息校验
npx husky add .husky/commit-msg 'npx --no -- commitlint --edit $1'
  1. 在项目根目录新建配置文件commitlint.config.js
module.exports = {
    extends: ['@commitlint/config-conventional'],
    rules: {
        'type-case': [2, 'always', ['lower-case', 'upper-case']],
        'type-enum': [2, 'always', [
            'feat', // 新功能
            'fix', // 修改
            'docs', // 文档
            'style', // 样式
            'refactor', // 重构
            'perf', // 性能
            'test', //测试
            'chore', // 其他改动
            'revert' // 分支回溯
        ]]
    }
}