Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

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

More than 3 years have passed since last update.

前提・問題意識

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

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away