运行预提交 husky 脚本时未找到 Npx 环境问题代码我尝试了什么

问题描述

环境

  • 节点安装在 ~/node-v14.15.3-linux-x64/bin/node 中并且已经在 PATH 变量中设置。
  • VSCode 1.55.2

问题

每次我尝试提交代码中的更改时,我都会得到:

.husky/pre-commit: 4: npx: not found husky - 预提交钩子退出代码为 127(错误

代码

  • husky.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

我尝试了什么

  • "terminal.integrated.inheritEnv": false,添加settings.json
  • 像这样在 .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 并将您的应用配置为使用相同的值。


那么,我该怎么做?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...