早年,有在文章 ESLint & Prettier 美化 Vue 代码 中阐述了如何利用 husky 、 lint-staged 、 Prettier 协同工作,从而保证团队统一代码风格;多年过去, husky 版本已更新至 8.*
,使用方法也发生了巨大变化;在此做点简单的分享:
安装
npm install husky lint-staged --save-dev
使用
运行如下命令以增加脚本配置,只需一次即可:
npm pkg set scripts.prepare="husky install"
npm run prepare
在 package.json
增加脚本命令,如下示例:
"script": {
"precommit-msg": "echo 💄 prettier project code 💄.",
},
"lint-staged": {
"{src,bin}/**.{ts,js,json,pcss,vue,css,scss}": [
"prettier --write"
]
},
运行 husky 命令以增加 hock
:
npx husky add .husky/pre-commit "npm run precommit-msg"
npx husky add .husky/pre-commit "npx lint-staged"
如此, Prettier 就会被注入至 Git 钩子,在 commit 时候主动运行 npm run prettier
命令,以美化所有匹配的代码;此外, lint-staged 依赖也不再被需要;最好可以将 .husky
提交至仓库,与团队成员共享这份配置,而无需每个人都操作一遍。值得一提的是,这并不会影响 gitmoji ;husky 会在 .husky
目录下,生成 prepare-commit-msg
文件:
#!/bin/sh
# gitmoji as a commit hook
exec < /dev/tty
gitmoji --hook $1 $2
2023 年 07 月 20 日写于〔深圳福田〕
猜您可能感兴趣的文章