【ミーズ】

mise(開発環境ランタイム管理) とは?

最終更新:
💡 開発に使う道具・環境変数・作業コマンドをそろえる

開発で使うランタイムやコマンドのバージョン、環境変数、タスクを管理するツール。プロジェクトの設定に合わせて実行環境を整え、ビルドやテストなどのコマンドを実行できる。

📌 このページのポイント
mise:開発の道具と作業をそろえる mise.toml [tools] バージョン [env] 環境変数 [tasks] 作業コマンド ツール Node.js Python など 環境変数 プロジェクトの 設定を適用 タスク mise run test 定義した処理 自動切り替えにはシェルへの組み込みが必要
3機能の対応例。mise execやmise runなら、シェルへの組み込みなしでも設定を適用できます。asdfとの完全互換を意味する図ではありません。
ひよこ ひよこ
miseは何をまとめてくれるの?
ペンギン先生 ペンギン先生
プロジェクトで使うツールのバージョン、環境変数、ビルドやテストのコマンドだよ。たとえばmise.tomlに、使うNode.jsのバージョンと環境変数、testというタスクを記録できるんだ。
ひよこ ひよこ
ディレクトリに入るだけで切り替わる?
ペンギン先生 ペンギン先生
対応するシェルにmise activateを組み込むと、プロンプトなどのタイミングでPATHや環境変数を更新できるよ。シェルに組み込まなくても、mise execで一つのコマンドに設定を適用できるんだ。
ひよこ ひよこ
タスクはどう実行するの?
ペンギン先生 ペンギン先生
testというタスクを定義していれば、mise run testで実行できるよ。タスクにはプロジェクトのツールと環境変数が適用される。既存のテストやビルドのコマンドに、共通の実行名を付けられるんだ。
ひよこ ひよこ
asdfからそのまま移れる?
ペンギン先生 ペンギン先生
.tool-versionsを読めるので、既存のバージョン指定を出発点にできる。ただし、インストール先やコマンド、プラグインの動作まで完全に同じではないよ。まず一つのプロジェクトで、設定の読み取りと実行を確かめよう。
ひよこ ひよこ
Windowsでも同じプラグインを使える?
ペンギン先生 ペンギン先生
mise自体はWindowsにも対応するけれど、使えるツールや配布物、バックエンドによるよ。従来のasdfのシェルプラグインは一般にUnix環境を必要とするので、そのままWindows用になるわけではないんだ。
ひよこ ひよこ
設定はmise.tomlだけにするべき?
ペンギン先生 ペンギン先生
環境変数やタスクも管理するならmise.tomlが使えるよ。チームで.tool-versionsを共有しているなら、それを残すこともできる。同じツールを両方に書いた場合の優先順位や、実際に選ばれたバージョンを確認してね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「mise」って出てきたら「開発ツール・環境変数・タスクをまとめて管理するツール」と思えばだいたいOK!
📖 おまけ:英語の意味
「mise-en-place」 = フランス語で「準備を整える」
💬 料理用語の mise-en-place(ミザンプラス)が由来で、調理前に材料や道具を整えることを意味するよ。開発環境を整えるツールにぴったりの名前だね

参考資料

← 用語集にもどる