git pre-commit hook failed 解决办法

2019-09-08 21:44:15


不是自己的项目,也不敢随便删除  于是 git commit -m['新加接口'] -n

一、 git commit -m 'xxx' 出现问题


今天在上传项目的时候在commit阶段遇到一个问题,无论是在Sourcetree上传还是用命令git commit -m 'xxx'都报了一下错误:


husky > npm run -s precommit (node v8.12.0)

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

后面查了很多方法都没有很好解决。但是大概能总结问题:


pre-commit钩子惹的祸


当你在终端输入git commit -m "xxx",提交代码的时候,

pre-commit(客户端)钩子,它会在Git键入提交信息前运行做代码风格检查。

如果代码不符合相应规则,则报错。


虽然会提示add --no-verify,但是我输入git commit -m 'xxx' --no-verify绕过验证,强制提交。 好像还是没有上传成功.如果你也一样


请看下面


二、'弱鸡'的解决方案


为了省点事,我并没有花功夫去查找代码哪里不符合规范.我是暴力地把pre-commit钩子给删除了!


具体步骤:


进入项目的.git文件夹(文件夹默认隐藏,可先设置显示或者命令ls查找)

再进入hooks文件夹

删除pre-commit文件

重新git commit -m 'xxx' git push即可。SourceTree也可以正常推送


总结一句话: 删除.git的提交规则文件: rm -rf ./git/hooks/pre-commit


  • 2021-04-15 10:07:49

    Chrome屏蔽Your connection is not private

    使用Fiddler时如何屏蔽Chrome的证书警告:"Your connection is not private"/"您的连接不是私密连接"(如图1所示)? 启动chrome的时候加上--ignore-certificate-errors命令行参数(如图2所示)即可。

  • 2021-04-15 10:10:00

    Puppeteer 系列踩坑日志—3—开启支持插件

    在使用puppeteer自动化的过程中,会发现其实开启的chrome往往自动禁用了插件功能,如果我们想在自动化测试的过程中,再去使用一些常用的插件提升效率(偷懒)的话,就行不通了,其实解决办法还是有的,我们今天就来讲解这个问题。

  • 2021-04-15 10:11:17

    Puppeteer拦截修改返回值

    page.setRequestInterception(true)拦截器的使用方法和场景 现附上Puppeteer的Api的链接https://github.com/GoogleChrome/puppeteer/blob/master/docs/api.md

  • 2021-04-15 10:32:18

    怎么给 headless chrome添加cookies

    In puppeter you have access to the session cookies through page.cookies(). So once you log in, you could get every cookie and save it in a json file:

  • 2021-04-15 10:51:21

    如何通过Devtools协议拦截和修改Chrome响应数据

    在日常研究中,我们经常碰到大量JavaScript代码,我们首先要深入分析才能了解这些代码的功能及具体逻辑。这些代码代码可能会被恶意注入到页面中,可能是客户送过来需要我们帮忙分析的脚本,也可能是我们的安全团队在网页上找到的引用了我们服务的某些资源。这些脚本通常代码量不大、经过混淆处理,并且我们总是需要经过多层修改才能继续深入分析。

  • 2021-04-19 10:54:39

    block和delegate的区别

    代理 可读性高 大部分可以属性 block 写的代码少 一般作为参数 通知 占用资源