本文主要是介绍前端工程化工具系列(五)—— Husky(v9.0.11)lint-staged(v15.2.5):代码提交前的自动审查利器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Husky 可以在 Git 提交或推送时自动检查提交信息、代码并运行测试。
lint-staged 可以针对暂存的 git 文件运行分析。
1. 环境要求
v9 以上的 husky,支持 Node.js v18+。
v15 以上的 lint-staged,支持 Node.js v18.12.0+。
在命令行中输入以下内容来查看当前系统中 node 的版本。
node -v
Node.js 推荐使用 v18.20.3+ 或者 v20.13.1+。
这里使用的包管理器是 PNPM,版本为 v9.1.4。
1 安装
在项目的根目录下,运行:
pnpm add -D husky lint-staged
2 配置
在命令行中执行:
pnpm exec husky init
NPM 则执行:
npx husky init
打开 .husky/pre-commit 文件,删除其中的 “pnpm test” ,替换成:
pnpm exec lint-staged
2.1 结合 ESLint 和 stylelint
在 package.json 中添加:
"lint-staged": {"*.{js,vue,ts}": ["pnpm exec eslint --fix"],"*.{css,scss}": ["pnpm exec stylelint --fix"]}
在 git commit 的时候,会自动检查和修复提交文件中的错误。有些不能被自动修复的错误,需要手工修改后才可以提交。
2.2 结合 commitlint
执行:
echo "pnpm dlx commitlint --edit $1" > .husky/commit-msg
或在 .husky 目录下新建 commit-msg 文件,里边加入以下内容:
pnpm dlx commitlint --edit $1
在 git commit 的时候,会自动检查 commit message 中的格式,如果有错误,则不能提交。
这篇关于前端工程化工具系列(五)—— Husky(v9.0.11)lint-staged(v15.2.5):代码提交前的自动审查利器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!