LoginSignup
54
51

More than 3 years have passed since last update.

nodebrewからnodenvに乗り換えた

Last updated at Posted at 2019-09-26

概要

ずっと使っていたnodebrewをやめて、ディレクトリごとにnodeのバージョンを切り替えられるnodenvに乗り換えました。

nodenv/nodenv

きっかけ

firebaseを使った開発をしてて、フロント側とclound functionsで対応するnodeのバージョンが違う事案が発生しました。

nodebrewだとディレクトリでバージョンを切り替えられなかったので、探した末nodenvにたどり着きました。

導入手順

nodebrewを削除

まずはnodebrewを削除します。

$ brew uninstall nodebrew

あとは ~/.bash_profile に書いてあるPATHを消します。(使用してるSHELLによってPATHの在り処は変わります)

$ vi ~/.bash_profile
# .bash_profile
PATH="~~" # nodebrewのPATH。ここを消す

nodeが消されたか確認します。

$ node -v
# バージョン情報が返ってこなければOK

nodenvをインストール

いろんな envライブラリを管理してる anyenvをインストールして、そこからnodenvをインストールしてきます。

anyenv/anyenv

$ brew install anyenv
$ anyenv init
$ anyenv install nodenv
$ exec $SHELL -l

nodenvがインストールされたか確認します。

$ nodenv -v
nodenv 1.3.0+5.ae0f24a #こんな感じのが返ってきたらOK

nodeをインストール

まずはインストール可能なバージョンの確認を。

$ nodenv install -l 
Available versions:
0.1.14
0.1.15
0.1.16
# 以下略

必要なnodeのバージョンをインストールします。

$ nodenv install 12.7.0
$ nodenv install 10.16.0

グローバル(通常使用する方)を設定。

$ nodenv global 12.7.0
$ node -v
v12.7.0

10系のほうは必要なディレクトリに移動して、以下のように設定します。

$ nodenv local 10.16.0
$ node -v
v10.16.0

あと、自分はyarnを使うのでそれも。

$ npm install -g yarn

インストールした諸々を反映させて

$ exec $SHELL -l

完了!

これでディレクトリごとにnodeバージョンの管理ができるようになりました。

うまく行かなかったらローカルにPATHの消し忘れはないか、反映し忘れはないかなど確認してみましょう。

あとは適宜本家Githubを見てみてくださいませ。

anyenv/anyenv

nodenv/nodenv

54
51
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
54
51