Husky钩子在SourceTree中报错:.husky/pre-commit: Line 4 npm: command not found
问题背景
使用husky作为git钩子,在precommit回调中添加以下命令:
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"
npm run prettier:src
npm run lint
在命令行中可以正常commit,并正确触发钩子,但是,在SourceTree中,却报错了:
.husky/pre-commit: Line 4 npm: command not found
解决方法
错误描述告诉我们,这是因为SourceTree找不到husky钩子中需要使用的命令。
解决方法
找到所需命令所在路径,然后添加到~/.huskyrc
文件中。
找到npm所在路径的方法
$ where npm
/usr/local/bin/npm
需要注意的是,该文件默认是没有的,可以手动创建文件并添加以下配置:
export PATH="/usr/local/bin/:$PATH"
也可以用以下命令自动创建文件并添加路径:
echo 'export PATH="/usr/local/bin/:$PATH"' >> ~/.huskyrc
参考文献
扫一扫关注微信公众号:耿直的IT男阿斌
聊一聊IT男眼中的世界