Не удается зафиксировать при объединении commitizen + husky: nvm не совместим с переменной окружения "npm_config_prefix"
У меня есть проект, который использовал commitizen без проблем. Я решил добавить хаски, чтобы бежать precommit
крючки с красивее. Проблема в том, что когда я запускаю npm run cm
команда, я получаю эту ошибку...
.....................
? Are there any breaking changes? No
? Does this change affect any open issues? No
nvm is not compatible with the "npm_config_prefix" environment variable: currently set to "/Users/aiglesias/.nvm/versions/node/v8.9.4"
Run `unset npm_config_prefix` to unset it.
.git/hooks/pre-commit: line 49: node: command not found
husky > npm run -s precommit (node )
env: node: No such file or directory
husky > pre-commit hook failed (add --no-verify to bypass)
/Users/aiglesias/Coding/react/react-basesupsub/node_modules/commitizen/dist/cli/strategies/git-cz.js:102
throw error;
^
Error: git exited with error code 1
at ChildProcess.<anonymous> (/Users/aiglesias/Coding/react/react-basesupsub/node_modules/commitizen/dist/git/commit.js:50:26)
at emitTwo (events.js:126:13)
at ChildProcess.emit (events.js:214:7)
at Process.ChildProcess._handle.onexit (internal/child_process.js:198:12)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! react-basesupsub@0.0.0-development cm: `git-cz`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the react-basesupsub@0.0.0-development cm script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/aiglesias/.npm/_logs/2018-02-03T08_22_42_663Z-debug.log
Я снял красивее и попробуйте просто хаски и основные npm run test
precommit hook, с той же ошибкой. Очевидно, я вижу сообщение, но я не знаю, работает ли unset npm_config_prefix
может вызвать у меня большие проблемы в других местах.
Редакция:
- ни
$NPM_CONFIG_PREFIX
ни$PREFIX
установлены в моей среде. - я пробовал
unset npm_config_prefix
, но с такими же результатами.
1 ответ
После сумасшествия, по-видимому, проблема с текущей стабильной версией лайки. Обновление до нового husky 0.15.0-rc.3
версия решила проблему.
На случай, если вы столкнетесь с этой проблемой в будущем, для обновления вам просто нужно...
npm i husky@next -D
Идти к
package json
и переместить свои крючки из"script"
в новый раздел husky.hooks, обращая внимание на измененные имена (изprecommit
вpre-commit
, например). В моем случае...ДО:
"scripts": { ... "precommit": "lint-staged" }
ПОСЛЕ:
"scripts": { ... }, "husky": { "hooks": { "pre-commit": "lint-staged" } }