问题标签 [git-husky]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - Husky - sed: -i 不能与标准输入一起使用
我有一个钩子,可以在提交消息之前添加 JIRA 票号。我希望能够与团队的其他成员分享它,这就是我使用赫斯基的原因。它在 .git/hooks 中运行良好,但是,在更改文件夹并使用 Husky 调用它之后,我似乎无法让它工作。
我已经查看了其他解决方案,但我不确定如何自己使用它们。我是否需要某种备份文件来执行此操作?如果是这样,我将如何声明?
票号到提交的消息:
包.json:
输出:
任何帮助将不胜感激。谢谢你。
git - 如何使用 Husky 预提交挂钩访问提交消息?
我的沙哑脚本:
假设我正在做一个git commit -m "I want that text"
. 如何在 shell 脚本中访问我的提交消息?我试图在 shell 脚本中回显 $HUSKY_GIT_PARAMS 和 $HUSKY_GIT_STDIN 但没有成功
husky - Yorkie git 钩子总是以“未找到”而失败
我正在使用 yorkie 2.0.0,并且无法在我的 git 挂钩中运行任何自定义 shell 脚本。我的目录结构如下所示:
我的 package.json 有这个 gitHooks 部分:
该commit-msg
文件绝对是可执行的,这是ls -l
行:
创建提交时,我得到以下输出:
我尝试了各种不同的目录结构,但从未找到。我已将 package.json 中的 gitHook 脚本更改为类似ls .githooks
的内容,然后文件就会显示出来。
到底是怎么回事?为什么yorkie找不到我的文件?
(我用 husky 标记了这个,因为 yorkie 是 husky 的一个分支,变化很小,并且没有 yorkie 标签。这里的问题可能不是 yorkie 特有的)
angular - Angular 8 Husky,代码覆盖率的预提交条件
我有一个 Angular 8 项目,我正在尝试设置一个用户无法提交的情况,除非某些百分比的代码覆盖率通过。
我正在使用 NX Workspace 和 Husky 在提交之前运行 Linting。我想在此之上运行 ng 测试,以及我可以提供数字的覆盖率测试。如果所有三个都通过,则提交代码。
我现在有这个 package.json 文件。我该如何添加?
git - GIT:如何在远程分支中的特定文件的 git push 之后触发 npm 脚本?
我有一个要求,一旦我将一个 csv 文件推送到远程分支,它应该调用一个 npm 脚本来处理来自 CSV 文件的数据。
请建议哪种方法是最好的方法。
node.js - Husky 没有被 git 事件触发
我创建了一个反应应用程序,它实现了 husky 来捕获 lint 错误:
环境
git version 2.21.0 (Apple Git-122)
, node v8.16.2
,npm v6.4.1
皮棉实现
- 使用创建了一个反应
npx create-react-app my-app-name
- 使用 eslint 实现
eslint --init
将脚本添加到
package.json
文件中:“scripts”: {“lint”: “eslint src/**/*.js”,}
- 在运行
eslint src/**/*.js
或npm run lint
lint 错误被完美捕获
赫斯基实施
- 安装哈士奇
npm install husky --save-dev
将哈士奇钩添加到
package.json
:"husky": { "hooks": { "pre-commit": "npm run lint:fix", "pre-push": "npm run lint" } }
测试 git 提交
- 冉
git commit -m "test commit"
问题
触发提交时永远不会调用 lint。这里有什么问题?顺便说一句,我已经尝试过这里提出的解决方案。
npm - 等待 husky commit-msg hook 完全完成并运行 Enquirer
我有一个脚本,我在 Git 提交期间运行,以使用 Husky 的commit-msg
钩子获取当前提交消息,并使用该脚本发出 HTTP 请求。我的挑战是在 Husky 钩子脚本完成后运行另一个脚本。我要运行的脚本使用Enquirer NPM 包。我尝试在 Husky 的钩子中运行包含 Enquirer 代码的脚本,post-commit
但发生的情况是两个脚本同时运行,第二个脚本以 退出commit-msg
,所以我想要一种方法等待commit-msg
完全完成然后我用 Enquirer 运行那个。我尝试通过关注此线程来解决问题,但子进程也以commit-msg
. 输出看起来像
关于如何规避这个问题的任何想法?谢谢。