1、代码检测工具: ESLint
2、代码格式化工具: Prettier
3、约定式提交规范:commitizen + husky + commitlint
第一二步:ESLint 与 Prettier 配合在本地解决代码格式问题
下面主要讲讲第三步: git 提交规范处理
1、git 提交规范化工具 commitizen
此时用git cz提交就搞定了规范化,但预防仍有人用git commit,于是
2、git hooks 阻止不符合的提交
git hooks工具:husky
检查提交信息工具:commitlint
安装Commitizen
1、全局安装Commitizen:npm install -g commitizen@4.2.4
2、安装并配置 cz-customizable 插件:npm i cz-customizable@6.3.0 --save-dev
3、项目根目录下创建 .cz-config.js 自定义提示文件
安装commitlint
1、npm install --save-dev @commitlint/config-conventional@12.1.4 @commitlint/cli@12.1.4
2、创建 commitlint.config.js 文件
安装 husky
1、npm install husky@7.0.1 --save-dev
2、启动 hooks , 生成 .husky 文件夹需执行命令: npx husky install
3、在 package.json 中生成 prepare 指令( 需要 npm > 7.0 版本 )
npm set-script prepare "husky install"
4、执行 prepare 指令:npm run prepare
5、添加 commitlint
的 hook
到 husky
中
npx husky add .husky/commit-msg 'npx --no-install commitlint --edit "$1"'
6、此时的 .husky
的文件结构
至此,已处理好 强制规范化的提交要求,不符合将不可被提交
但要是有人忘记配置这些,把代码写的乱七八糟的直接就提交了怎么办呢?
husky 配合 eslint 监测 pre-commit 钩子,这样就算没配置也提交不了
如果再配合 lint-staged 则可以尝试自动修复格式错误
感觉自己的团队目前不需要,所以具体的就不赘述了