首页 > 其他分享 >commitlint 结合 husky 实现提交信息格式校验(2023-03-18)

commitlint 结合 husky 实现提交信息格式校验(2023-03-18)

时间:2023-03-18 21:58:19浏览次数:55  
标签:npm 03 信息格式 18 校验 提交 husky config commitlint

为什么要对 git 提交信息进行格式校验

  • 通过对提交信息进行格式校验能统一规范,这在团队协作过程中显得格为重要。

  • 符合规范的提交信息能很好反映此次提交的的目的,内容和作用。

  • 在后期的问题定位过程中,能根据提交信息的类型(type)和 主题(subject)进行快速筛选。

  • 每次发布新版本时,能根据提交信息自动生成 CHANGELOG

commitlint

commitlint 默认使用 Angular 规范进行格式校验,使用步骤如下:

  1. 使用 npm 安装 commitlint
# @commitlint/config-conventional(commitlint的提交规范), @commitlint/cli(脚手架命令)
npm uni @commitlint/config-conventional @commitlint/cli
npm install @commitlint/config-conventional @commitlint/cli -D
  1. 添加 commitlint.config.js 文件
echo module.exports = {extends: ['@commitlint/config-conventional']} > commitlint.config.js

commitlint.config.js

  1. 测试 commitlint 命令
# 测试输入信息是否符合提交规范
echo foo | commitlint
echo foo: bar | commitlint
echo chore: bar | commitlint

examples

husky

  1. 安装 husky(最新版的 husky 和老版本的配置方式不同
npm uni husky && npm install husky -D
  1. 设置 husky 脚本并运行,运行成功后会在项目中生成 .husky 目录
npm pkg set scripts.prepare="husky install"
npm run prepare
  1. 添加 git 钩子,老版本的 husky 需要在 .huskyrc.js 文件中定义钩子,而新版本只需运行添加命令即可。添加成功后能在 .husky 目录看到具体的命令内容。
# 注意在 windows 环境下这里一定要用双引号,如果使用单引号会添加失败的
husky add .husky/commit-msg "npx --no-install commitlint --edit $1"

husky

  1. commit-msg 钩子能在每次 git commit 时运行 commitlint 命令进行格式校验,不符合规范的提交将被拦截。

invalid-commit

标签:npm,03,信息格式,18,校验,提交,husky,config,commitlint
From: https://www.cnblogs.com/XiaoXiaoMD/p/17231914.html

相关文章