突然,当我给git commit
.
我不知道我做错了什么。我也试过git clean
命令。有人遇到过类似的问题吗?
赫斯基可以防止你变坏git commit
,git push
等等。如果您收到此错误,请检查您的代码语法,以防万一您收到此错误,即使您的代码也是有效的。请使用以下解决方案。
删除.git/hook
文件夹,然后npm install
重新安装 husky。有可能与 husky 生成的文件和 .git/hook/ 文件发生冲突。
这是一个临时/快速的解决方案
git commit -m "message" --no-verify
@Elio 的评论是一个更受欢迎的解决方案,就像--no-verify
跳过任何应该运行的脚本一样。
我在这里假设,如果脚本在那里,那是有原因的......
所以:
您也可以删除 .git/hook 文件夹,然后卸载并重新安装 husky。husky 生成的文件和 .git/hook/ 文件有一些冲突。这对我有用
就我而言,不需要卸载/重新安装。
我很惊讶最佳答案建议只是省略钩子的验证。如果你有 Husky 钩子,你不能忽略它们。
就我而言,husky > pre-commit hook failed (add --no-verify to bypass)
一旦更新了一些依赖项,我就开始获得。通过在 husky 文件中将 Husky 的 pre-commit linting 命令更改为npm run lint
(通常这个在大多数情况下工作正常)解决了这个问题:
// .huskyrc.json
{
"hooks": {
"pre-commit": "npm run lint"
}
}
注意:如果在您的;lint
中声明了脚本,则该解决方案有效。package.json
就我而言,我有:
// package.json
{
"scripts": {
"lint": "tsc && eslint \"src/**/*.{js,ts,tsx}\" --quiet --fix"
}
}
我找到了两个这样的临时解决方案
git config --unset core.hooksPath
或者
git commit -m "message" --no-verify
提交到 electron.js 项目时,我遇到了同样烦人的错误消息。添加--no-verify
选项有效,但每次提交时我都必须这样做也有点烦人。
然后我在文件中找到了与 precommit 相关的package.json
内容:
{
"scripts": {
...
"precommit": "lint-staged",
...
}
}
只需删除上面的行就解决了我的问题。