环境
- 节点安装在
~/node-v14.15.3-linux-x64/bin/node
中,并且已经在PATH
变量中设置 - VSCode 1.55.2
问题
每次我试图提交代码中的更改时,我都会得到:
.husty/pre-commit:4:npx:未找到husky-预提交挂钩退出,代码127(错误(
代码
- husty.sh
#!/bin/sh
if [ -z "$husky_skip_init" ]; then
debug () {
[ "$HUSKY_DEBUG" = "1" ] && echo "husky (debug) - $1"
}
readonly hook_name="$(basename "$0")"
debug "starting $hook_name..."
if [ "$HUSKY" = "0" ]; then
debug "HUSKY env variable is set to 0, skipping hook"
exit 0
fi
if [ -f ~/.huskyrc ]; then
debug "sourcing ~/.huskyrc"
. ~/.huskyrc
fi
export readonly husky_skip_init=1
sh -e "$0" "$@"
exitCode="$?"
if [ $exitCode != 0 ]; then
echo "husky - $hook_name hook exited with code $exitCode (error)"
exit $exitCode
fi
exit 0
fi
- 预提交文件
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npx lint-staged
npx lint-staged
我尝试了什么
- 在
settings.json
中添加此"terminal.integrated.inheritEnv": false,
- 导出节点&
.huskyrc
中的npx如下所示:
export NODEJS_HOME="$HOME/node-v14.15.3-linux-x64/bin"
export NPX_Dir="$HOME/node-v14.15.3-linux-x64/bin/npx"
但都没用
注意使用
git commit
从vscode的终端提交更改时,预提交脚本正常运行。
文档声明:
您可以在终端中回显$PATH,并将应用程序配置为使用相同的值。
那么,我该怎么做呢?
最近遇到此问题。此错误".hsky/pre-commit:4:npx:未找到husky-pre-commit钩子已退出,代码为127(错误("是因为我的系统上没有安装节点。我建议试试这个https://www.newline.co/@Adele/如何在macos上安装nodejs和npm--22782681
我的.zshrc
包含
export PATH="/opt/homebrew/opt/node@16/bin:$PATH"
它将添加我的节点到我的PATH中,作为zsh配置过程的一部分。
所以我只是将同一行复制并放置到.huskyrc
文件中
$ echo 'export PATH="/usr/local/opt/node@10/bin:$PATH"' >> ~/.huskyrc