背景
最近在构建基于Nuxt3的开发框架基座,提前先引入这种规范,供后期多人协作时候使用。
项目地址:https://github.com/wikipine/nuxt3-ant-design
原理
基于Git的项目,在提交前进行语法格式校验的,检查commit msg格式的,都是基于 Git 的 Hooks来实现。这边用到的是 commit-msg 。用插件的目的是不用自己维护脚本,增加扩展性。
依赖安装
pnpm install -D husky @commitlint/cli @commitlint/config-conventional
husky
# 当前使用的版本
"husky": "^9.0.11"
生成 .husky 目录
pnpm exec husky install
新旧版本的配置还是会有点不同的,具体的Coplit或GPT一下就明白用法了。
在 .husky 目录下新建一个文件 commit-msg, 填写下以下内容
#!/bin/sh
pnpm exec commitlint -x @commitlint/config-conventional -e $GIT_PARAMS
格式规范
Commitlint 基础采用的是 Angular 的规范,也是公认的最规范的提交方式。
提交的内容,需要按照<类型>([可选的作用域]): <描述> 这样的方式来提交,不符合规范的,将会被打回,不会被推送。常用的类型 feat,fix,docs 这几个
更多的使用说明以及类型: https://github.com/conventional-changelog/commitlint
网友评论