3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Voltaの次はこれ?Rust製で高速なバージョン管理ツール『proto』のセットアップガイド

Last updated at Posted at 2025-09-06

フロントエンド開発で人気のバージョン管理ツール Volta ですが、近年は更新が滞りがちです。そこで新たな乗り換え先として注目を集めているのが、Rust製の高速バージョン管理ツール proto です。

proto はNode.jsだけでなく、Go, Python, Rustなど、さまざまな言語やツールのバージョンを一つのツールで管理できるのが大きな魅力です。

今回は、Voltaからの乗り換えを検討している方や、新しくprotoを使い始める方向けに、インストールから基本的な使い方までを分かりやすく解説します。

インストール

前提要件

下記のパッケージは事前にインストールをしておく必要があります。

# macOS
brew install git unzip gzip xz

# Ubuntu / Debian
apt-get install git unzip gzip xz-utils
  • Git:利用可能なバージョン/タグを取得するため
  • tar, unzip, gz, xz:アーカイブを解凍するためのもの

補足: Windowsの場合は Git for Windows などをインストールしていれば、必要なツールは同梱されているため、追加のパッケージは基本的に不要です。

Linux、macOS、WSL

bash <(curl -fsSL https://moonrepo.dev/install/proto.sh)

Windows

irm https://moonrepo.dev/install/proto.ps1 | iex

動作確認

proto --version

proto 0.52.4などのバージョン表示が帰ってくればインストールが成功しています。

通常、インストールスクリプトが自動で環境変数(PATH)を設定してくれますが、もしコマンドが見つからない場合は、お使いのシェルの設定ファイル(.bashrcや.zshrcなど)に以下の行を手動で追記してください。

~/.bashrc
export PATH="$HOME/.proto/shims:$HOME/.proto/bin:$PATH"

初期設定と基本的な使い方

protoの各種設定やツールは、ホームディレクトリ以下の ~/.proto にインストールされます。

1. シェルの設定(必須)

protoを最大限に活用するため、最初にシェルの設定を行いましょう。
これにより、ディレクトリを移動した際に、そのプロジェクトで設定されているツールのバージョンが自動的に有効になります。

まず、以下のコマンドを一度だけ実行します。

proto setup

次に、お使いのシェルの設定ファイル(.bashrc, .zshrc など)の末尾に、以下の内容を追記してください。

~/.bashrc
# proto shell activation
if command -v proto >/dev/null 2>&1; then
  eval "$(proto activate bash)"
fi

設定を反映させるために、ターミナルを再起動するか、source ~/.bashrcsource ~/.zshrc を実行してください。

2. グローバル設定(推奨)

グローバル設定ファイル ~/.proto/.prototools を作成し、便利なオプションを有効にしておきましょう。

[settings]
auto-install = true # .prototools に記載されたツールを自動でインストール
auto-clean = true # 古いバージョンを自動削除してディスク容量を節約

公式ドキュメント:https://moonrepo.dev/docs/proto/config

3. プロジェクトでの使い方

プロジェクトごとにツールのバージョンを管理するのが、protoの基本的な使い方です。

プロジェクトのルートディレクトリで、以下のコマンドを実行してみましょう。

# プロジェクトで使うNode.jsのバージョンを v20 に固定する
proto pin node 20

このコマンドを実行すると、以下の2つのことが行われます。

  • カレントディレクトリに .prototools という設定ファイルが作成され、node = "20" という内容が書き込まれる。
  • Node.js v20 がまだインストールされていなければ、自動でダウンロード・インストールされる。(auto-install = true のため)

これにより、このディレクトリ内では常にNode.js v20が使われるようになります。
下記のような設定(.prototools) をGitで管理すれば、チームメンバー全員が同じバージョンのツールを簡単に揃えることができます。

./.prototools
node = "22.19.0"
npm = "10.9.3"

4. グローバルでの使い方

プロジェクトに依存せず、システム全体で使いたいツールはグローバルに設定します。

# Node.js
proto install node lts --pin global

# npm
proto install npm latest --pin global

よく使うコマンドまとめ

# proto自体を最新バージョンにアップデート
proto upgrade

# インストール可能なツールのバージョン一覧を表示
proto versions <tool>

# 現在のディレクトリでツールのバージョンを固定(.prototoolsを作成/更新)
proto pin <tool> <version>

# ツールのインストール
proto install <tool> <version>

# ツールのアンインストール
proto uninstall <tool> [version]

まとめ

Voltaの更新が止まっている今、protoは非常に有力な乗り換え先です。

  • Rust製で動作が非常に高速
  • Node.js以外にもGo, Python, Bunなど多数のツールに対応
  • .prototools ファイルでプロジェクトごとのバージョン管理が簡単

特に、複数のプロジェクトで異なるNode.jsやパッケージマネージャーのバージョンを管理したい方、フロントエンド以外の言語もまとめて管理したい方には、ぜひ一度試してみてほしいツールです。

更新メモ

  • Windows環境でのインストールでは、自動でパスが通らないことを確認
  • ~/.proto/shimsディレクトリは各ツールのインストール後に作成されるため、各ツールの初回インストール以前ではオートインストールのワークフローが発生しない
3
2
0

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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?