NVM Node Version Manager facilita o trabalho de atualização do nodejs, como node está em constante evolução sempre temos novas versões e ficar fazendo download ou update via algum gerenciador de pacotes como o homebrew/apt-get é bem tedioso.
NVM nos permite ter mais de uma versão de node instalada, e alternar entre elas, fornece uma linha de comando simples para realizar as tarefas de instalacão e desinstalacão além de permitir a execucão de um script em determinada versão mesmo ela não sendo a versão corrente.
Plataformas
Somente disponível para OS-X e Linux para Windows existe uma alternativa chamada nvmw.
Documentacão: https://github.com/creationix/nvm
Instalação via Curl
$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh
Instalação via Wget
$ wget -qO- https://raw.github.com/creationix/nvm/master/install.sh | sh
Listar versões de node disponíveis
$ nvm ls-remote
Instalar uma versão
$ nvm install v0.10.18
Utilizar uma versão
$ nvm use v.0.10.18
Caso queira executar um script em uma versão que não seja a default, ou por exemplo verificar se seu código é compátivel com uma versão antiga:
$ nvm run v.0.4.12 script.js
Bônus - Autocompletar no terminal
[[ -r $NVM_DIR/bash_completion ]] && . $NVM_DIR/bash_completion
Insira a linha acima no seu arquivo .bashrc, .bash_profile, .zshrc, etc Não esqueça logo após inserir esta linha salvar e recarregar o arquivo com:
source .bashrc|.bash_profile|.zshrc
Autocompletar em ação:
nvm [tab]
-- shell function --
nvm nvm_checksum nvm_ls nvm_ls_remote nvm_remote_version nvm_set_nullglob nvm_version
Venho utilizando já algum tempo e facilita bastante o meu workflow, e você como está gerenciando suas versões de node?