git 之commitizen提交代码规范

109 阅读1分钟

背景

团队开发必备。

用到的插件

关于commitizen

关于husky

配置安装

  • commitizen
    //1.全局安装
    npm install -g commitizen
    //2.安装cz-customizable
    npm install cz-customizable --save-dev
    //3.根目录下创建.commitlintrc.json文件
     {
      "extends": ["@commitlint/config-conventional"],
      "rules": {
        "type-enum": [
          2,
          "always",
          [
            "ci",
            "test",
            "config",
            "chore",
            "docs",
            "feat",
            "fix",
            "perf",
            "refactor",
            "revert",
            "style"
          ]
        ]
      }
    }

    //4.安装依赖
    npm install --save-dev @commitlint/config-conventional  @commitlint/cli
  • husky
    //1.install
    npm install --save-dev husky
    //2.start hooks
    npx husky install
    //3.package.json添加指令
    "prepare":"husky install"
    //4.npm run prepare
    npm run prepare
    //5.添加 commitlint 的 hook 到 husky中
    npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'
    //添加 commit 时的hook 
    npx husky add .husky/pre-commit “npx eslint --ext .js,.vue src” 
  • lint-staged
    //1.在package.json中配置
    "lint-staged": {
    "src/**/*.{js,vue}": [
      "eslint --fix",
      "git add"
    ]
  }
    //2.修改.husky/pre-commit
    npx lint-staged

commitlint.config.js写配置问价时会出现提交错误,因为要用UTF-8格式。所以改为json文件形式。

小结

npm包实在是比较多的,选好包,快速高效的开发。