120
112

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

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

Last updated at Posted at 2015-01-07

前提・問題意識

  • 作業対象のプロジェクトによって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

120
112
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
120
112

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?