Если вы разрабатываете или как я тестируете по написанное на Node.js, то наверняка сталкивались с необходимостью управлять несколькими версиями Node.js. Для этих целей отлично подходит nodenv
— легковесная утилита для управления версиями Node.js.
Кратко плюсы можно описать так:
- Изоляция версий Node.js для разных проектов.
- Легко устанавливать новые версии, без риска сломать старые.
- Простота и надёжность —
nodenv
работает быстро и стабильно. - Интеграция с shell, автоматическое переключение версий при смене директории.
- Возможность временного изменения версии через
nodenv shell
.
Установка Link to heading
Для установки nodenv
как всегда будем использовать Homebrew:
brew install nodenv
После установки нужно добавить nodenv
в ваш шел, в моем случае это zsh
.
— добавляем в файл ~/.zshrc
:
eval "$(nodenv init -)"
— теперь примените изменения:
source ~/.zshrc
Просмотр и установка версий Node.js Link to heading
Посмотреть последние стабильные версии для установки: Link to heading
nodenv install --list
Посмотреть все доступные версии для установки: Link to heading
nodenv install --list-all
Установить нужную версию, например, 22.16.0: Link to heading
nodenv install 22.16.0
Переключение между версиями Node.js Link to heading
Установить версию глобально, т.е по умолчанию: Link to heading
nodenv global 22.16.0
Эта версия будет использоваться по умолчанию во всех проектах, если не указано иное.
Установить локальную версию (для конкретного проекта): Link to heading
Перейдите в папку проекта и выполните:
cd ../bla-bla/my-project/
nodenv local 24.2.0
Теперь при входе в эту директорию автоматически будет активироваться версия 24.2.0
.
И например перейдем в другую директорию:
cd ../bla-bla/my-other-project/
nodenv local 22.16.0
Теперь в этой директории будет использоваться версия 22.16.0
.
Использование nodenv shell
Link to heading
Иногда бывает удобно временно изменить версию Node.js только для текущей сессии терминала, без изменения глобальной или локальной настроек. Для этого используется команда:
nodenv shell 24.15.0
Теперь в текущей сессии терминала будет использоваться версия 16.15.0
. Как только вы закроете терминал, эта настройка сбросится.
Удаление ненужных версий Link to heading
Если версия больше не нужна:
nodenv uninstall 14.19.3