

Husky6配置正确但无法触发githook的问题
source link: https://mirari.cc/2021/05/31/Husky6%E9%85%8D%E7%BD%AE%E6%AD%A3%E7%A1%AE%E4%BD%86%E6%97%A0%E6%B3%95%E8%A7%A6%E5%8F%91githook%E7%9A%84%E9%97%AE%E9%A2%98/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Husky6配置正确但无法触发githook的问题
项目中之前一直使用husky进行代码质量控制,主要包含两个步骤:
- 代码提交前,先执行eslint校验,不通过则不允许提交。
- commit记录需要符合规范,用于自动生成changelog。
Husky6的配置步骤如下:
安装husky(lint-staged和commitlint的安装略)
确保package.json的依赖包含:
"husky": "^6.0.0",
执行husky安装命令
husky install
在项目目录下会出现一个.husky
文件夹,包含一个.gitignore
文件和一个_
目录,不要改动它们,是存放husky脚本的。
添加hook动作
根据教程添加命令,或者在.husky
目录直接创建以下这两个文件:
commit-msg
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npx --no-install commitlint --edit $1
用于commit内容校验
pre-commit
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npx lint-staged
用于代码eslint校验
注意文件名不可自定义,必须对应githook的阶段。
如果是初次配置,到这一步就已经可以正常运行了。
将husky安装命令配置为自动执行
在package.json的scripts中添加以下内容:
"prepare": "husky install",
注意脚本名必须是prepare,这样使用npm、pnpm执行install命令时,这条命令会在安装完成时自动执行。
当代码上传到远程,同步到另一台设备时,安装完依赖就可以自动启用husky了,无需关心上面那些复杂动作。
但是我遇到了这样的问题:
所有配置都完全一致,执行husky安装命令提示安装成功,没有错误信息,但githook就是不触发。
原因是hook文件的权限不足。在windows上创建的文件提交并同步到mac上就会出现此类问题,因为不是使用husky add
命令创建的。
解决方式很简单,只要执行以下命令即可:
chmod +x .husky/pre-commit
chmod +x .husky/commit-msg
官网参考:
https://typicode.github.io/husky/#/?id=hooks-not-running
</div
Recommend
-
13
(已解决)为什么C++数组在函数内无法计算正确的元素个数?这个问题别人也问过,但我看答案没找到自己想知道的,因为我想问的是底层的问题。 我知道参数的传递是把实参的值或副本或地址传递给形参,也知道...
-
9
在前篇随笔《使用Vue-TreeSelect组件实现公司-部门-人员级联下拉列表的处理》中介绍了Vue-TreeSelect组件的使用,包括使用v-modal绑定值,normalizer 来映射属性处理,还有一个@input时间处理...
-
16
为什么浏览器无法正确识别自闭合的script标签? coding2live 2021-02-14...
-
16
解决Centos下vsftp无法上传文件的问题,附vsftp配置详解Jager · 6月12日 · 2014年vsft...
-
23
总所周知,163 的曲库经常会出现变灰的曲目或是过一会就变收费了,通过将本地的歌曲上传到网易云音乐云盘上是一个不错的解决办法,但是云盘时常抽风不能正常对应到网易的曲目库。这篇文章旨在解决这个问题。本文中所测试的音乐皆为在 QQ 音乐单曲购买过...
-
49
一、背景描述 我司(格家网络)的某个应用使用的Logback输出日志,之前应用的info日志是通过RollingFileAppender输出的。 其中RollingFileAppender的工作流程图示如下: 后来我增加了一些业务日志,并随手把Appender改成了c...
-
2
苹果回应iPhone 14车祸监测无法100%触发:没有满足功能最低要求 2022-10-02 11:02 出处/作者:快科技 整合编辑:佚名 0
-
11
V2EX › Apple iPhone 14 Pro 无法通过在锁屏界面长按来触发编辑锁屏操作
-
6
SwiftUI的onAppear在NavigationView中不触发的问题 | 张洪Heo 博客快捷键 shift 关闭快捷键功能 shift 打开...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK