ndenv 使い方メモ

今さらだけどプロジェクトごとにnodeやら各ソフトのバージョンがバラバラなのが増えて来てnodebrewでいちいち切り替えるのもきつくなってきた。のでndenvいれたのでそのメモ。

ndenvインストール

すでにインストールされていないか確認してなければインストール

# 確認
$ brew list | grep ndenv

# インストール
$ brew install ndenv

# インストールされたことを確認
$ ndenv --version
ndenv 0.4.0-4-ga339097

.bash_profileにndenvの設定を追記
自分の場合はnodebrewを使っていたのでnodebrewの設定をコメントアウト

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

# ndenv                                                                                                                                                                                                                                       
export PATH="$HOME/.ndenv/bin:$PATH"
eval "$(ndenv init -)"

nodejsのPATHがndenvになっているか確認

$ source ~/.bash_profile
$ which node
/Users/xxxxx/.ndenv/shims/node

ndenv installを使えるように

$ git clone https://github.com/riywo/node-build.git $(ndenv root)/plugins/node-build

参考
https://qiita.com/noraworld/items/462689e108c10102d51f


今回必要な各バージョン

nodenpmcordovaionic
v6.13.15.7.16.5.02.2.3
v8.10.05.7.16.5.03.2.0
v8.11.36.4.17.1.04.2.1

前準備

## インストール可能なバージョンを調べる
$ ndenv install -l

## インストール済みのバージョンを調べる
$ ndenv versions

v8.10.0の環境作成

## プロジェクト用のディレクトリ作成
$ mkdir v8_10_0 && cd $_

## node v8.10.0のインストール
$ ndenv install v8.10.0

## このプロジェクトで使用するnodeのバージョン設定
$ ndenv local v8.10.0
$ node -v
v8.10.0

## npm 5.7.1をインストール
$ npm install -g npm@5.7.1
$ npm -v
5.7.1

## cordova 6.5.0をインストール
$ npm install -g cordova@6.5.0
$ cordova -v
6.5.0

## ionic 3.2.0をインストール
$ npm install -g ionic@3.2.0
$ ionic -v
3.2.0

v6.13.1とv8.11.3についてもそれぞれ行う。
プロジェクトのディレクトリ直下に.node-versionがそれぞれ作成されるのでこのファイルをgitなどで管理して共有すればok。以上です