问题复现

在执行git commit -m "message"命令时,报错 终止暂存

钩子()

pre-commit钩子都被存储在 Git 目录下的 hooks 子目录中。 

当你用 git init 初始化一个新版本库时,Git 默认会在这个目录中放置一些示例脚本。

这些脚本除了本身可以被调用外,它们还透露了被触发时所传入的参数。

pre-commit

.git/hooks/pre-commit这个钩子被 git commit 命令调用, 你可以通过在git commit -m "message"命令中添加--no-verify 参数来跳过。

这个钩子在得到提交消息和开始提交前被调用。

如果他返回值不是0,那么中止提交。

1. 好处是

这个钩子可以用来在提交前检查代码错误,相当于eslint代码检查。

当默认的pre-commit钩子被启用时,如果它发现文件尾部有空白行,那么就会中止此次提交。

2. 在同步本地项目到git出现这个错误

pre -commit hook failed (add --no-verify to bypass)

当你在终端输入git commit -m "message", 提交代码的时候, pre-commit(客户端)钩子,它会在Git键入提交信息前运行做代码风格检查。如果代码不符合相应规则,会终止提交

3. 解决方法

进入项目的.git文件夹(文件夹默认隐藏,可先设置显示或者命令ls查找),再进入hooks文件夹,删除pre-commit文件,重新git commit -m 'message'即可。

4. 其他解决方式

git commit --m "message" 

或者

git commit --no-verify -m "message"

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部