node.jsを複数バージョン切り替えられるようにインストール(Mac:nodebrew Windows:nodist)

前提・問題意識

  • 作業対象のプロジェクトによってnode.jsのバージョンも切り替えたい
    • プロジェクトによって稼働しているnode.jsのバージョンが異なる
    • ローカルPCの開発環境では仮想環境を使っていない

Mac編

  • node.jsのバージョン管理にはnodebrewを利用する

nodebrewをインストール

Command(bash)
$ curl -L git.io/nodebrew | perl - setup
実行ログはこんな感じで出ればOK
$ curl -L git.io/nodebrew | perl - setup
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
  0     0    0     0    0     0      0      0 --:--:--  0:00:01 --:--:--     0
100 20027  100 20027    0     0  11995      0  0:00:01  0:00:01 --:--:-- 11995
fetching nodebrew...
install nodebrew in $HOME/.nodebrew

========================================
Add path:

export PATH=$HOME/.nodebrew/current/bin:$PATH
========================================
$

PATHを加えといてね、と言われているので書き込んでおく

  • bashなら~/.bash_profile
  • zshなら~/.zsh_profile
~/.bash_profileとかに1行追記
...
export PATH=$HOME/.nodebrew/current/bin:$PATH
...

profileを読み直して現行ターミナルにもPATHを通しておく

Command(bash)
$ source ~/.bash_profile

nodebrewの動作確認

Command(bash)
$ nodebrew help
  • ズラズラとコマンドリストが出てくればOK。
インストールできるバージョンを確認
$ nodebrew ls-remote
  • バージョンのリストがズラズラ出てくる。
    • 特にターゲットのバージョンがなければ、Node.js公式blogを見てStableの最新版を選んどく。

node.jsのインストール

Command(bash)
$ nodebrew install-binary v0.10.32
こんなログでればOK
$ nodebrew install-binary v0.10.32
fetch: http://nodejs.org/dist/v0.10.32/node-v0.10.32-darwin-x64.tar.gz
######################################################################## 100.0%
Install successful
$

インストールしたnode.jsを確認

Command(bash)
$ nodebrew ls
実行例
$ nodebrew ls
v0.10.32

current: none
$
  • currentに、現在利用中のnode.jsバージョンが表示される
  • 使用のnode.jsをまだ指定してないのでcurrent: noneとなってる

利用node.jsバージョンを指定する

Command(bash)
$ nodebrew use v0.10.32
実行例
$ nodebrew use v0.10.32
use v0.10.32
$

利用中のnode.js確認

Command(bash)
$ node -v
実行例
$ node -v
v0.10.32
$

インストール後のメンテナンス

インストール済みverのリスト+利用中verの確認
$ nodebrew ls
v0.10.32
v0.11.14

current: v0.10.32
利用バージョンの切り替え
$ nodebrew use v0.11.14
特定バージョンの追加インストール
$ nodebrew install v0.11.14  # 特定バージョン指定
$ nodebrew install latest    # 最新
$ nodebrew install stable    # 安定版最新
$ nodebrew install v0.10.x   # マイナーバージョン最新
特定バージョンのアンインストール
$ nodebrew uninstall v0.11.14
nodebrew自体のUpdate
$ nodebrew selfupdate

Windows編

  • node.jsのバージョン管理にはnodistを利用
  • 管理者権限でインストールしておく

Git for Windowsのインストールと設定

Git Bashを管理権限で実行できるようにしておく

  1. Git Bashのショートカットを右クリックで『プロパティ』を開く
  2. 「ショートカット」タブの「詳細設定…」ボタンで『詳細プロパティ』を開く
  3. 「管理者として実行」にチェックを入れておく

nodistのインストール

C:¥Program Files¥nodistにインストール

Command(GitBash)
$ cd "/c/Program Files"
$ git clone git://github.com/marcelklehr/nodist.git

環境変数の設定

変数名
Path C:¥Program Files¥nodist¥bin
NODIST_PREFIX C:¥Program Files¥nodist
  • 環境変数を読み直すように、コマンドプロンプトは新たに開いておく

nodistの稼働確認

Command(GitBash)
$ nodist -v

node.jsのインストール(nodistの初期セットアップ)

Commnad(GitBash)
$ nodist selfupdate
  • 自動的にnode.jsのStableの最新バージョンがインストールされる
  • そのほか、依存解決や何やらをいろいろやってくれる…ぽい。
    • npmでいろいろダウンロードしてくる。

インストールされているnode.jsバージョン群と、利用中バージョンの確認

Commnad(GitBash)
$ nodist
実行例
$ nodist
> 0.10.32  (global)

node.jsの稼働確認

Commnad(GitBash)
$ node -v

インストール後のメンテナンス

インストール済みverのリスト+利用中verの確認
$ nodist
利用バージョンの切り替え
$ nodist 0.11.14        # グローバル
$ nodist local 0.11.4   # ディレクトリ配下で指定
$ nodist env v0.11.4     # ターミナル単位で切り替え
特定バージョンの追加インストール
$ nodebrew + v0.11.14  # 特定バージョン指定
特定バージョンのアンインストール
$ nodist - v0.11.14
nodist自体のUpdate
$ nodist selfupdate

Reference