SuperAPI AI 工具集

setup-pre-commit

测试与质量

查看项目

更新于 10-15 21:08

技能介绍

用途:在当前仓库中设置 Husky pre-commit hook,使提交前自动对暂存文件运行 Prettier,并执行类型检查与测试。

主要能力:安装 husky、lint-staged、prettier 为 devDependencies;初始化 Husky;创建 .husky/pre-commit、.lintstagedrc,并在缺失时创建 .prettierrc;在 hook 中运行 lint-staged、typecheck 和 test。

使用方式:先检测包管理器(依据 package-lock.json、pnpm-lock.yaml、yarn.lock、bun.lockb,不确定时默认 npm)。安装依赖后执行 npx husky init,创建 .husky/pre-commit,内容为 npx lint-staged、npm run typecheck、npm run test(按检测到的包管理器替换 npm;若 package.json 无对应脚本则省略并告知用户)。.lintstagedrc 内容为 {"*": "prettier --ignore-unknown --write"}。仅在无 Prettier 配置时创建 .prettierrc,默认值包括 useTabs false、tabWidth 2、printWidth 80、singleQuote false、trailingComma es5、semi true、arrowParens always。最后验证文件存在、prepare 脚本为 husky,并运行 npx lint-staged 验证,随后提交变更。

限制与注意:Husky v9+ 的 hook 文件不需要 shebang;prettier --ignore-unknown 会跳过无法解析的文件;pre-commit 先运行 lint-staged,再运行完整类型检查和测试。其他细节暂未提供。