【Volta】複数プロジェクトで共通のNode.jsバージョンを共有する方法
公開日2024.10.28
Voltaというツールをご存知でしょうか?
今回の記事では1つのリポジトリの複数プロジェクトでnode.jsのバージョンを共有したいと思い、それがVoltaで実現できたのでその方法を書いていきます!
Voltaの簡単な概要
Voltaは、JavaScriptツールの管理を簡単かつ効率的に行うためのツールマネージャーです。
主な特徴は以下の通りです。(https://volta.sh)
- 高速:Rust製でどうやらはやいみたいです
- 信頼性:プロジェクト内で全員が同じツールを使用できるようにします。
- 汎用性:パッケージマネージャー、Node.jsランタイム、OSに関係なく、volta installコマンド一つで必要なツールをインストールできます。
ぼくが気に入っている点はディレクトリに入るとnode.jsのバージョンが自動で切り替わることです。このおかげでローカル環境のnode.jsバージョンを意識することもなく日々快適な生活を送れています。
あとロゴがかわいいのも推しポイントですね。
プロジェクトでバージョンを選択する方法
Voltaを使用してプロジェクト固有のNode.jsやパッケージマネージャーのバージョンを指定するには、以下の手順を実行します
- プロジェクトのルートディレクトリに移動します。
- 以下のコマンドを実行して、プロジェクト用のNode.jsバージョンを設定します
volta pin node@<バージョン>
- 必要に応じて、npmやyarnなどのパッケージマネージャーのバージョンも指定できます
volta pin npm@<バージョン>
volta pin yarn@<バージョン>
これらのコマンドを実行すると、package.jsonファイルにvoltaセクションが追加され、指定したバージョンが記録されます。
複数プロジェクトでVoltaの設定を共有する方法
1つのリポジトリに複数のプロジェクトがあり、それらすべてでVoltaの設定を共有したい場合は、以下の手順で設定できます:
- リポジトリのルートにpackage.jsonファイルを作成し、共有したいVolta設定を記述しますpackage.json
{ "volta": { "node": "<共有するNodeバージョン>", "npm": "<共有するnpmバージョン>", "yarn": "<共有するyarnバージョン>" } }
- 各プロジェクトのpackage.jsonファイルに以下の設定を追加しますpackage.json
{ "volta": { "extends": "../package.json" } }
この設定により、各プロジェクトはリポジトリのルートにあるpackage.jsonファイルのVolta設定を継承します。特定のディレクトリで作業したい時、自動でバージョンが切り替わるのでとても便利ですね!
Voltaのセットアップも結構かんたんなので、ぜひためしてください(`・ω・´)