Если вы разрабатываете или как я тестируете по написанное на 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