一、 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钩子给删除了!

具体步骤:

  1. 进入项目的.git文件夹(文件夹默认隐藏,可先设置显示或者命令ls查找)
  2. 再进入hooks文件夹
  3. 删除pre-commit文件

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

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

最后忠告一句: 这是不得已的办法。如果是日常开发,还是乖乖地写好代码的规范,现在代码一般都会进行ESLint校验,如果觉得麻烦,可以装一个Prettier插件,帮你格式化代码

SourceTree/git解决pre-commit hook failed的问题的更多相关文章

  1. git commit -m "XX"报错 pre -commit hook failed (add --no-verify to bypass)问题

    在同步本地文件到线上仓库的时候 报错 pre -commit hook failed (add --no-verify to bypass) 当你在终端输入git commit -m "xx ...

  2. [Linux] 低版本centos升级git解决fatal: HTTP request failed

    编译用的一些依赖yum install curl-devel expat-devel gettext-devel openssl-devel zlib-develyum install gcc per ...

  3. (转)Git冲突:commit your changes or stash them before you can merge. 解决办法

    用git pull来更新代码的时候,遇到了下面的问题: error: Your local changes to the following files would be overwritten by ...

  4. linux 实战使用,上传git 解决冲突

    Last login: Fri Dec 18 09:48:55 on ttys000lidongxiaodeiMac:~ lidongxiao$ cd /Users/lidongxiao/Docume ...

  5. 【Git使用】SourceTree+Git简单使用(Windows)(转)

    导读: 本人过去Git的可视化工具用的是TortoiseGit,虽然Android Studio也能进行版本管理,但是用下来,感觉SoureTree这款工具是最舒服的(免费的),下面就给大家介绍下我的 ...

  6. 记录一次Git解决CONFLICT冲突

    目录 记录一次Git解决CONFLICT冲突 1.CONFLICT产生的原因 2.Git正确的LIANGZHONG 使用流程 2.1 暂存,拉取,恢复暂存,合并(如果有冲突),提交,推送 2.2 将本 ...

  7. SourceTree&Git部分名词解释

    SourceTree&Git部分名词解释 克隆(clone):从远程仓库URL加载创建一个与远程仓库一样的本地仓库 提交(commit):将暂存文件上传到本地仓库(我们在Finder中对本地仓 ...

  8. svn Error: post-commit hook failed (exit code 127) with output

    Command: Commit Modified: C:\Users\xsdff\Desktop\project\index.html Sending content: C:\Users\xsdff\ ...

  9. gradle 及 git 环境下利用hook及gradle脚本自动添加versioncode和versionname的方法

    在 app/build.gradle 文件里添加几行代码: def gitCommitShortHash = 'git log -1 --pretty=%h'.execute([], project. ...

随机推荐

  1. Chrome表单自动填充如何取消(暂时可行的解决办法)

    做项目时一直遇到一个问题,那就是用chrome测试的时候页面上的表单一直会自动填充,并且伴有黄色的背景颜色,有时候感觉很方便,有时候又很想去掉. 之前也多次寻找过方法,但是网上的方法都差不多,很多都是 ...

  2. vue:vuex详解

    一.什么是Vuex? https://vuex.vuejs.org/zh-cn 官方说法:Vuex 是一个专为 Vue.js应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相 ...

  3. Codeforce 513A - Game

    Two players play a simple game. Each player is provided with a box with balls. First player's box co ...

  4. TCP协议、算法和原理

    TCP是一个巨复杂的协议,因为他要解决很多问题,而这些问题又带出了很多子问题和阴暗面.所以学习TCP本身是个比较痛苦的过程,但对于学习的过程却能让人有很多收获. 关于TCP这个协议的细节,我还是推荐你 ...

  5. Kattis之旅——Chinese Remainder

    Input The first line of input consists of an integers T where 1≤T≤1000, the number of test cases. Th ...

  6. STM32开发 -- 4G模块开发详解(转)

    STM32开发 -- 4G模块开发详解(1) STM32开发 -- 4G模块开发详解(2) STM32开发 -- 4G模块开发详解(3) STM32开发 -- 4G模块开发详解(4)

  7. Java笔记 #04# 类的初始化顺序补充

    参考java中的类的初始化顺序详解 package org.sample; class Bread { Bread() { System.out.println("Bread()" ...

  8. Python建立多线程任务并获取每个线程返回值

    1.进程和线程 (1)进程是一个执行中的程序.每个进程都拥有自己的地址空间.内存.数据栈以及其他用于跟踪执行的辅助数据.进程也可以派生新的进程来执行其他任务,不过每个新进程都拥有自己的内存和数据栈,所 ...

  9. Centos6下给PHP安装Qconf扩展

    一.下载Qconf的zip包        1.进入github地址:https://github.com/Qihoo360/QConf,下载zip包文件,并上传至服务器二.安装QConf unzip ...

  10. devexpress vs2015 安装亲测