Я создал очень простой сценарий предварительной фиксации: -
#!/usr/bin/env sh
# Run tests
npm test
if [ $? -ne 0 ]; then
echo "Tests failed. Aborting.."
exit 1
fi
exit 0
Когда я запускаю git commit
в командной строке (с проваленными тестами), я получаю ожидаемый выход 1 с сообщением Tests failed. Aborting..
.
Однако, если я использую GitHub для Mac, я получаю:
.git/hooks/pre-commit: line 5: npm: command not found
Tests failed. Aborting..
(256)
Я предполагаю, что это связано с тем, что npm
недоступна для среды выполнения, которую использует GitHub для Mac, но я рвал на себе волосы, пытаясь понять, как это исправить.