我正在使用 yorkie 2.0.0,并且无法在我的 git 挂钩中运行任何自定义 shell 脚本。我的目录结构如下所示:
<project root>
|-- .githooks
| |-- commit-msg
|
|-- package.json
|-- .git
| |-- hooks
| | |-- <all the proper yorkie git hooks files>
| |
| |-- <other .git stuff>
|
|-- <lots of other irrelevant files>
我的 package.json 有这个 gitHooks 部分:
"gitHooks": {
"commit-msg": ".githooks/commit-msg $GIT_PARAMS"
}
该commit-msg
文件绝对是可执行的,这是ls -l
行:
-rwxr-xr-x 1 dan dan 400 Sep 14 08:51 commit-msg
创建提交时,我得到以下输出:
> running commit-msg hook: .githooks/commit-msg $GIT_PARAMS
/bin/sh: 1: .githooks/commit-msg: not found
commit-msg hook failed (add --no-verify to bypass)
我尝试了各种不同的目录结构,但从未找到。我已将 package.json 中的 gitHook 脚本更改为类似ls .githooks
的内容,然后文件就会显示出来。
到底是怎么回事?为什么yorkie找不到我的文件?
(我用 husky 标记了这个,因为 yorkie 是 husky 的一个分支,变化很小,并且没有 yorkie 标签。这里的问题可能不是 yorkie 特有的)