husky > pre-commit hook 失败(添加 --no-verify 绕过)
Posted
技术标签:
【中文标题】husky > pre-commit hook 失败(添加 --no-verify 绕过)【英文标题】:husky > pre-commit hook failed (add --no-verify to bypass) 【发布时间】:2021-01-04 15:55:53 【问题描述】:当我提供git commit
时,我突然收到“husky > pre-commit hook failed (add --no-verify to bypass)”错误消息。
我不知道我做错了什么。我也试过git clean
命令。
【问题讨论】:
也可以删除.git/hook文件夹,然后卸载重装husky。 husky 生成的文件和 .git/hook/ 文件有一些冲突。这对我有用 【参考方案1】:赫斯基可以防止你坏git commit
、git push
等等。如果您收到此错误,请检查您的代码语法,以防万一您收到此错误,即使您的代码也是有效的。请使用以下命令。
git commit -m "message" --no-verify
另一种解决方案:
删除.git/hook
文件夹,然后卸载重装husky。有可能与 husky 生成的文件和 .git/hook/ 文件发生冲突。
【讨论】:
它帮助了我,而无需检查任何代码语法和其他 lint。谢谢@Sathia 删除项目目录中的 .git/hook 文件夹并尝试再次提交代码,它对我来说就像一个魅力。谢谢!! 已删除 .git/hooks 文件夹并再次提交。这对我也有用 它是hooks
复数。删除它对我有用。谢谢!
删除 .git/hooks 也为我工作!【参考方案2】:
@Elio 的评论是一个更受欢迎的解决方案,因为 `--no-verify' 会跳过任何应该运行的脚本。
我在这里假设如果有脚本是有原因的......
因此:
你也可以删除.git/hook文件夹,然后卸载重装husky。 husky 生成的文件和 .git/hook/ 文件有一些冲突。这对我有用
在我的情况下,不需要卸载/重新安装。
【讨论】:
【参考方案3】:我很惊讶最佳答案建议只是省略钩子的验证。如果你有 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"
注意:如果在您的package.json
中声明了lint
脚本,则该解决方案有效;就我而言,我有:
// package.json
"scripts":
"lint": "tsc && eslint \"src/**/*.js,ts,tsx\" --quiet --fix"
【讨论】:
【参考方案4】:我找到了两个这样的临时解决方案
git config --unset core.hooksPath
或
git commit -m "message" --no-verify
【讨论】:
以上是关于husky > pre-commit hook 失败(添加 --no-verify 绕过)的主要内容,如果未能解决你的问题,请参考以下文章
通过 husky 在 docker 中运行 pre-commit 和 pre-push 命令