最近ローカルでnuxt createしたり、Amplify CLIを入れたりと、ローカル環境で、nodeやyarnのバージョンを切り替えたりしないといけないことがあったので、まとめておきました。
ちょっと、管理の仕方として最新の方法じゃないかもしれないので、色々異論あるかと思いますが、メモ程度なのでご容赦ください。
nodeの管理
- nodeのバージョンを切り替えるための処理
- homebrewがインストールされている前提
nodebrewがインストールされているか確認
$ nodebrew -v
$ node -v
でnodeのバージョンも確認できる
nodebrewをインストール(インストール済みであれば不要)
$ brew install nodebrew
$ nodebrew -v
でバージョン確認
nodebrewでインストール可能なnodeのバージョンを確認
$ nodebrew ls-remote
ローカルの状況確認(nodebrewを通さずにインストールされているnodeがあれば一旦、アンインストールが必要)
$ brew ls
→nodeが入っていれば一度アンイストールしなければいけない
今まで使っていたnodeをアンインストール
$ brew uninstall --force node
→無理なら$ brew uninstall --ignore-dependencies node
pathを設定
$ vim ~/.bash_profile
vimでファイルを開き、以下を追加する。
export PATH=$HOME/.nodebrew/current/bin:$PATH bash_profile
$ source ~/.bash_profile
→更新して設定を反映させる。
セットアップ
$ nodebrew setup
→セットアップのためのコマンドで、これやらないとインストールできない。
インストール可能なバージョンを確認
$ nodebrew ls-remote
nodebrewを通して、使いたいバージョンを指定してnodeをインストール
$ nodebrew install-binary 8.11.1
使用するnodeのバージョンを選択
$ nodebrew use v8.11.1
nodeが正しく設定されているか確認
$ nodebrew ls
v8.11.1
v12.14.0
current: v8.11.1
こんな感じになれば正解。
yarnのバージョン管理
yvmでyarnの複数バージョンを管理する(Yarnのバージョン管理マネージャー)
既にyarnをinstall済みだったら削除する
$ yarn -v
// Homebrewでインストールしている場合
% brew uninstall yarn
yvmをinstall
$ brew install tophat/bar/yvm
$ curl -s https://raw.githubusercontent.com/tophat/yvm/master/scripts/install.js | node
インストール完了後、一度ターミナルを再起動して、yvmのバージョンを確認
$ yvm version
yvm version
$ yvm update-self
$ yvm install latest
$ yarn -v
$ which yarn
/Users/hogetarou/.yvm/shim/yarn
yvmで他のバージョンをインストールしたい場合
$ yvm install 1.〇〇.〇
yvmへインストール済みのyarnのバージョンの表示
$ yvm list
バージョン切り替え
$ yvm use 1.〇〇.〇
yarnで管理しているパッケージを一覧したい
globalに入れいているパッケージ一覧
$ yarn global list --depth=0
各プロジェクト配下に入れているパッケージ一覧
$ yarn list
npmのバージョン管理について
npmとはNode Package Managerの略だが、npmもyarnと同列のパッケージ管理ツール。
npmはnodeを入れると使えるようになる。
nodeのバージョンに紐づいてnpmのバージョンも切り替わるようなので、node.jsのバージョンを実行したい環境に合わせておけばnpmもそのnodeに紐づくバージョンで実行される模様。
$ npm list -g --depth=0
npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.
/Users/hogetarou/.nodebrew/node/v16.15.1/lib
├── @aws-amplify/cli@9.1.0
├── corepack@0.10.0
└── npm@8.11.0
各プロジェクト配下にnpmで入れているパッケージ一覧の確認
$ npm list
終わりに
最近は、Voltaという、node.js,yarn,npmのバージョン管理を一元的にできるものも出てきているようです。
またどこかで統一してみようかなと思いました。
参考: https://zenn.dev/taichifukumoto/articles/how-to-use-volta