NodeJS – управление версиями
В Ruby есть два основных способа управлять активными версиями языка: rbenv и rvm. Их использование позволяет значительно упрощать установку/обновление Ruby на локальную машину и одновременно использовать несколько версий языка в различных проектах.
Как оказалось, в NodeJS есть нечто подобное.
N
N – Node version management. Для установки требует, чтобы на машине уже стояла NodeJS с пакетным менеджером npm. А дальше все просто:
$ npm install -g n
Для установки нескольких версий NodeJS используются команды:
$ n 0.8.14
$ n 0.8.17
$ n 0.9.6
Для переключения между ними запускаем менеджер и выбираем из списка требуемую версию:
$ n
0.8.14
ο 0.8.17
0.9.6
Для удаления используется команда rm:
$ n rm 0.9.4 v0.10.0
Преимущества данного менеджера версий в том, что устанавливаются бинарные пакеты, то есть не нужно на локальной машине ничего компилировать. Недостатком же является то, что для того, чтобы его использовать, нужно предварительно установить NodeJS.
NVM
NVM – Node Version Manager. Для установки требуется наличия на локальной машине GIT и C++ компилятора. На OSX для этого достаточно установить XCode, а для Ubuntu установим два пакета:
$ sudo apt-get install build-essential libssl-dev
Теперь устанавливаем сам nvm:
$ curl https://raw.githubusercontent.com/creationix/nvm/v0.17.3/install.sh | bash
или с помощью wget:
$ wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.17.3/install.sh | bash
По завершении данной операции рекомендуют закрыть окно терминала и открыть его вновь. Но вполне достаточно провести чтение файла конфигурации bash/zsh:
$ source ~/.zshrc
После чего становиться доступной для работы команда nvm. Для установки последней стабильной версии NodeJS используется команда:
$ nvm install 0.10
или же используя алиас:
$ nvm install stable
Для просмотра установленных версий используется команда:
$ nvm ls
Для просмотра доступных для установки версий:
$ nvm ls-remote
Чтобы использовать определенную версию NodeJS по умолчанию, задаем алиас:
$ nvm alias default stable
Для того, чтобы запустить проект под определенной версией NodeJS:
$ nvm exec 0.9 node --version
Преимущества nvm в том, что для его использования на компьютере достаточно иметь только GIT и C++, что в случае с OSX или Linux не представляет проблем. С его помощью очень просто управлять установленными версиями NodeJS.
Недостатком является то, что как и в N, нет возможности явно указать, какую версию NodeJS использовать в определенном проекте.