公式
インストール可能なバージョンを表示する
$ nvm ls-remote
LTS バージョンだけを表示する
$ nvm ls-remote --lts
LTSとは
Node.js の LTS にはそれぞれ名前が付いている。
Ver 14.x 系は Fermium
16.x 系は Gallium
18.x 系は Hydrogen
というように。
例えば以下のコマンドは Gallium という LTS のバージョンリストを出力する。
$ nvm ls-remote --lts=Gallium
v16.13.0 (LTS: Gallium)
v16.13.1 (LTS: Gallium)
v16.13.2 (LTS: Gallium)
v16.14.0 (LTS: Gallium)
v16.14.1 (LTS: Gallium)
v16.14.2 (LTS: Gallium)
v16.15.0 (LTS: Gallium)
v16.15.1 (LTS: Gallium)
v16.16.0 (LTS: Gallium)
v16.17.0 (LTS: Gallium)
v16.17.1 (LTS: Gallium)
v16.18.0 (LTS: Gallium)
v16.18.1 (LTS: Gallium)
v16.19.0 (Latest LTS: Gallium)
バージョンを指定して Node.js をインストールする
Gallium
(v16.x 系) をインストールする
$ nvm install --lts=Gallium
Fermium
(v14.x 系)もインストールしておく
$ nvm install --lts=Fermium
因みに 2022-12 時点で Hydrogen
(v18.x系)は M1 では動かない。
インストールキャッシュを削除する
$ nvm cache clear
nvm で使用可能なバージョンを表示する
$ nvm ls
デフォルトで使用する node を指定する
新しく開いた zsh/bash シェルで使用するデフォルトの Node バージョンを設定する。
$ nvm alias default 16
このコマンドでは Gallium
といった LTS 名は使えないっぽいのでメジャーバージョン番号で指定する。もしかしたら LTS 名を使う方法もあるかもしれない。
また、このコマンドは新しく開く、つまり bash --login
等した時のデフォルト node バージョンの指定で、カレントのシェルで nvm use
していた場合それは上書きされない。
使用する node バージョンをスイッチする
$ nvm use lts/gallium
# gallium に切り替える
$ nvm use 18
# 18 = Hydrogen に切り替える
$ nvm use default
# alias の default に設定されたバージョンに切り替える
現在選択されている Node バージョンを確認する
$ nvm current
v16.19.0
nvm ls
でも一応 ->
でマークしてくれるので分かる。
$ nvm ls
v14.21.2
-> v16.19.0
v18.12.1
system
特定のディレクトリで使用するバージョン指定の仕方
他の言語のバンドルマネージャ系と異なり、設定ファイルを作っておくだけでは切り替わらないので注意。
-
.nvmrc
ファイルを作成し、バージョンを書き込んでおく -
nvm use
を実行する(と.nvmrc
に書き込まれたバージョンが use される)
$ echo 'v21.7.3' > .nvmrc
$ nvm use