解决mac下sourcetree中运行husky命令提示 npm: command not found

背景:

在项目中加入了 husky, 并在gitpre-commit钩子中加入eslint校验,在命令行中使用git commit -m "fix: eslint"时,pre-commit钩子中的 shell文件正常执行,但我使用sourceTree做同样的操作时,却提示:npm: command not found(还有同学会提示(npx : command not found))

pre-commit钩子中代码如下

#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npm run lint:staged

package.json中的脚本为

"scripts": {
    "lint:staged": "npx lint-staged"
 },

解决方案

pre-commit钩子中加入PATH变量解析

#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
# 加入下面这行
PATH="/usr/local/bin:$PATH"
npm run lint:staged
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容