nvm — менеджер версий Node.js, который должен быть у каждого разработчика

24 Jul, 2026
94,305
🔱 10,302
👥 1,076

Представьте: вы работаете над несколькими проектами, каждый из которых требует разную версию Node.js. В один момент вы понимаете, что тратите кучу времени на переустановку Node и конфликты версий. Знакомая ситуация? Вот здесь-то и приходит на помощь nvm (Node Version Manager).

Что такое nvm и зачем он нужен?

nvm — это POSIX-совместимый bash-скрипт для управления версиями Node.js. Он позволяет:

  • Устанавливать несколько версий Node.js параллельно
  • Быстро переключаться между версиями
  • Автоматически выбирать нужную версию для проекта
  • Управлять глобальными пакетами для каждой версии

И всё это — без необходимости ручной переустановки и без конфликтов между версиями.

Как выглядит работа с nvm?

# Установить конкретную версию Node
nvm install 14.17.0

# Использовать эту версию
nvm use 14.17.0

# Проверить текущую версию
node -v  # v14.17.0

# Переключиться на другую версию
nvm use 16.13.0

Основные возможности nvm

  1. Простая установка — достаточно выполнить одну команду:

    curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
    
  2. Автоматическое определение версии через файл .nvmrc:

    Реклама
    echo "16.13.0" > .nvmrc
    nvm use  # автоматически использует версию из .nvmrc
    
  3. Перенос глобальных пакетов при смене версии Node:

    nvm install --reinstall-packages-from=current 18.0.0
    
  4. Поддержка LTS-версий через специальные алиасы:

    nvm install --lts
    nvm use lts/argon
    
  5. Работа в Docker с предустановленными версиями Node:

    RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
    RUN echo "18.0.0" > .nvmrc
    RUN nvm install
    

Практические кейсы использования

Разработка нескольких проектов

Когда вы работаете над legacy-проектом на Node 12 и современным приложением на Node 18, nvm позволяет переключаться между ними одной командой.

Тестирование совместимости

Легко проверяйте, как ваш код работает в разных версиях Node без постоянной переустановки.

CI/CD pipelines

Используйте разные версии Node для разных этапов сборки и тестирования.

Особенности установки

Для разных ОС есть свои нюансы:

  • macOS: может потребоваться установка Command Line Tools
  • Linux: убедитесь, что установлены build-essential и libssl-dev
  • Alpine Linux: требуется дополнительная настройка
  • Windows: работает через WSL или Git Bash

Альтернативы

Хотя nvm — самый популярный вариант, существуют альтернативы:

  • nvm-windows — для нативных Windows-систем
  • fnm — более быстрая реализация на Rust
  • asdf — менеджер версий для множества языков

Вывод: стоит ли использовать nvm?

Безусловно, да, если вы:

  • Работаете с несколькими проектами на Node.js
  • Тестируете код на разных версиях Node
  • Хотите избежать головной боли с версиями и зависимостями
  • Разрабатываете в команде, где важно единство среды

nvm — это тот инструмент, который один раз ставишь и потом не представляешь, как без него жил. Попробуйте, и вы удивитесь, насколько проще станет ваша разработка на Node.js.

🍪 Мы используем файлы cookie и сервис аналитики Яндекс.Метрика, чтобы сайт работал лучше. Продолжая пользоваться devtrends.ru, вы соглашаетесь с обработкой данных согласно Политике конфиденциальности.