git Husky预提交钩子未运行

kb5ga3dv  于 2023-11-15  发布在  Git
关注(0)|答案(1)|浏览(230)

我有一个git目录“root”,其中有两个文件夹:“frontend”和“backend”。.git文件夹在“root”中。我试图在“frontend”文件夹中安装husky和lint staged。
我故意在“frontend”文件夹中的文件中留下了一些错误。然而,当我暂存文件并提交它们时,husky似乎没有运行,提交通过了。
npx lint-staged可以很好地识别错误,但是pre-commit钩子似乎没有运行。
我尝试了这里提到的故障排除。除了第四个问题:“检查您的Git版本是否大于2.9”之外,其他问题都解决了。但最新的Git版本不是2.42(https://git-scm.com/)吗?

// root/fe/.lintstagedrc.json

{
  "**/*.{css,js,ts,jsx,tsx}": ["eslint", "prettier --write"]
}
# root/fe/.husky/pre-commit.sh

cd fe && npx lint-staged
// root/fe/package.json

{
  "name": "fe",
  "private": true,
  "version": "0.0.0",
  "type": "module",
  "scripts": {
    "dev": "vite --open",
    "build": "tsc && vite build",
    "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0",
    "prepare": "cd .. && husky install fe/.husky",
    // ...
  },
  "dependencies": {
    "react": "^18.2.0",
    // ...
  },
  "devDependencies": {
    "eslint": "^8.45.0",
    "eslint-plugin-prettier": "^5.0.1",
    "eslint-plugin-react": "^7.33.2",
    "husky": "^8.0.3",
    "lint-staged": "^15.0.2",
    "prettier": "^3.0.3",
    "typescript": "^5.0.2",
    "vite": "^4.4.5",
    // ...
  },
}
y53ybaqx

y53ybaqx1#

请参阅您链接的故障排除中的第一步:
确保文件名中没有拼写错误。例如,precommit或pre-commit.sh是无效的名称。
您的文件名为pre-commit.sh。请将其转换为pre-commit

相关问题