👋
全ての環境構築をmiseへ
はじめに
デェェェェン(わかる人は笑ってください。わからない人はわからないままで大丈夫です。)。
政治的な意図は何もないですが、「全ての環境構築をmiseへ」移行するとlocalの環境がすっきりするのでおすすめです。
開発環境の構築と管理は、プログラミングにおいて避けて通れない課題です。従来は言語ごとに異なるversion管理ツールを使う必要がありました。NodeJSではnvm、Pythonではpyenv、Rubyではrbenvなど、複数の言語を扱うと管理が複雑になります。
開発環境管理の課題
- 言語ごとに異なる環境構築ツールを使用する必要がある
- インストール先やコマンドの違いによる混乱
- 複数のversion管理ツールが干渉して予期せぬ問題が発生
- 「本当にどの環境が動いているのか」がわからなくなる
miseによる課題の解決
miseは、これらの課題を解決する統合version管理ツールです。一つのツールで数百以上の言語やツールを管理できます。
主な特長:
- 言語やツールの統一管理(Node.js、Python、Ruby、Go、Javaなど)
- プロジェクトごとに異なるversionを自動的に切り替え
- ASDFと互換性があり、既存の設定ファイルも利用可能
- 環境変数の管理機能も内蔵
- パフォーマンスの向上(PATH直接操作による低オーバーヘッド)
多くの言語やツールに対応しており、公式サイトの対応言語一覧で確認できます。
この記事では、miseのインストール方法と基本的な使い方を紹介します。
miseのinstall
-
brewでmiseをinstall
brew install mise
-
miseをzshシェルで自動起動するように~/.zshrcにevalを追加
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc
- 追加した
evalの設定の反映
source ~/.zshrc
-
miseのversion確認とcommandが通っているかの確認
mise --version
- 以下のような表示が出ればOKです。
_ __
____ ___ (_)_______ ___ ____ ____ / /___ _________
/ __ `__ \/ / ___/ _ \______/ _ \/ __ \______/ __ \/ / __ `/ ___/ _ \
/ / / / / / (__ ) __/_____/ __/ / / /_____/ /_/ / / /_/ / /__/ __/
/_/ /_/ /_/_/____/\___/ \___/_/ /_/ / .___/_/\__,_/\___/\___/
/_/ by @jdx
2025.4.4 macos-arm64 (2025-04-15)
mise WARN mise version 2025.4.6 available
使用したいtoolのinstall
- 使用したいtoolをinstallします。
- ここでは試しに
nodeをinstallしてみます。(latestのversionがinstallされます。)
mise install node
- 正確にversionを指定したい場合は以下のようにversionを指定します。
mise install node@18.17.1
- installできているか確認します。
mise list
- 正常にinstallできていると以下のような表示が出ます。
Tool Version Source Requested
node 23.11.0
使用したいtoolのpathを通す
- 上記までの状態で、
nodeを叩いてもcommandが通りません。 - 以下のcommandを実行して、
pathを通します。
mise use node
-
pathが通ったか確認します。
node -v
- 適宜先ほどinstallした
nodeのversionが表示されるはずです。
mise.tomlについて
- この際に
mise.tomlというファイルが該当のディレクトリに作成され、そのディレクトリでmiseが認識して使用されるtoolの情報が自動で記載されます。
mise.toml
[tools]
node = "latest"
-
mise.tomlは上記のように、miseで設定されたtoolのversion情報などを記載したファイルです。 - このファイルは直接編集することも可能です。
-
mise.tomlがあるディレクトリで、以下の順でcommandを叩くと、mise.tomlで設定された環境が構築されるので、環境の再配布も楽です。
mise trust
mise install
よく使うmiseのcommand
# miseでinstallしたtool一覧
mise list
# toolのinstall
mise install <tool>
# toolのversionを指定してinstall
mise install <tool>@<version>
# pathを通す activate
mise use <tool>
# miseでの環境構築を許可
mise trust
Discussion
細かいことで申し訳ありません。こちらの
mise useはmise installではないかと思います。全然細かくないです。
ご指摘ありがとうございます!
修正しました!