如何使用 mise 版本管理:安装 mise、激活 shell、安装 Node/Python 与项目 .mise.toml
装好 mise 并写 .mise.toml,让 Node/Python 随仓库目录自动对齐。
换仓库就要切 Node 或 Python 版本,nvm、pyenv 各管一套,CI 和 README 又对不上。mise(原 rtx)用一份配置在进目录时自动选工具版本,并能把版本写进仓库里的 .mise.toml。
搜索 mise 版本管理 安装 Node Python .mise.toml 的人,通常要完成:安装 mise、在 shell 里激活、安装 Node/Python 运行时、在项目里提交 .mise.toml 并让队友 mise install 对齐。步骤以官方文档 mise.jdx.dev 为准。
mise 适合谁
多仓库、多版本的全栈开发者
一个 CLI 管 Node、Python、Ruby、Terraform 等;进目录自动切换,不必手动 nvm use。
要写进 Git 的团队
.mise.toml 或 mise.toml 可提交,新人 clone 后 mise install 即可。
想统一本地与文档的人
README 写「Node 22 + Python 3.12」时,配置文件比口头约定更可核对。
安装 mise(macOS / Linux)
- 1
官方安装脚本(通用)
在终端执行官方 Getting Started 中的命令,例如
curl https://mise.run | sh。装完后新开一个终端,运行mise --version确认 CLI 在 PATH 里。 - 2
macOS:Homebrew 可选
若已用 Homebrew,也可
brew install mise。无论哪种方式,都以mise.jdx.dev当前安装页为准,不要混用未文档化的第三方脚本。 - 3
Linux 包管理器
部分发行版提供社区包;若文档列出 apt/dnf 源,按对应章节安装。装完同样用
mise --version验证。 - 4
Windows
官方支持 Windows(含 WSL 场景)。本文步骤以 macOS/Linux 终端为主;Windows 路径见文档的 Windows 小节。
激活 shell(必做)
mise 需要在 shell 启动时 hook 进 PATH,否则 node / python 不会随目录切换。把下面一行写进对应 rc 文件(以文档为准):
# zsh (~/.zshrc)
eval "$(mise activate zsh)"
# bash (~/.bashrc)
eval "$(mise activate bash)"
# fish (~/.config/fish/config.fish)
mise activate fish | source保存后 source 该文件或重开终端。运行 mise doctor(若可用)或 type mise 确认激活无报错。
安装 Node 与 Python 运行时
- 1
显式安装版本
mise install node@22与mise install python@3.12会按 mise 后端下载并缓存工具。首次可能稍慢,取决于网络。 - 2
当前目录启用
mise use node@22 python@3.12会在当前目录写入/更新配置(或.mise.toml)。再运行node -v、python3 --version核对。 - 3
可选:全局默认
mise use --global node@22给个人机器设默认;团队仍以仓库内.mise.toml为准。 - 4
查看已装工具
mise ls列出已安装版本;which node应指向 mise 管理的 shim 路径。
项目里的 .mise.toml
在仓库根目录创建 .mise.toml(或文档允许的 mise.toml),提交到 Git:
[tools]
node = "22"
python = "3.12"
[env]
PROJECT_ENV = "dev"队友 clone 后在该目录执行 mise trust(若提示信任配置),再 mise install 安装缺失版本。进入目录时 mise 应自动切换 node / python。
| 命令 | 作用 | 何时用 |
|---|---|---|
mise install | 按配置安装缺失工具 | clone 后 / CI 本地 |
mise use node@22 | 写入当前目录版本 | 初始化项目 |
mise ls --current | 当前目录生效版本 | 排错 |
mise uninstall node@20 | 删除缓存的旧版本 | 腾磁盘 |
mise 管的是开发机上的工具版本,不替代 Docker 镜像或生产运行时。容器内版本请在 Dockerfile / compose 里单独 pin。
版本对齐后若要远程结对改架构或语音过一遍环境变量,可从 wbroom 首页 开浏览器房间,见 创建与加入房间。
还想核对的问题
mise 和 asdf、nvm 能一起装吗?
可以并存,但多个版本管理器同时改 PATH 容易冲突。团队项目建议只保留 mise(或只保留 asdf),并在 shell rc 里只激活一个。官方文档有从 asdf 迁移的说明。
进目录没有自动切换版本?
检查 shell 是否 eval "$(mise activate …)"、是否在含 .mise.toml 的目录、是否已 mise trust。IDE 内置终端有时不读 rc,请在系统终端验证。
CI 里怎么用?
在 pipeline 安装 mise 后运行 mise install,再执行 mise exec -- npm test 等(具体子命令见文档 Tasks/CI 章节)。不要在日志里打印密钥。
.tool-versions 和 .mise.toml 选哪个?
mise 可读 asdf 风格的 .tool-versions,也支持 TOML。新项目推荐 .mise.toml,便于加 [env] 等块;已有 asdf 文件可先沿用再逐步迁移。