mise 一款可以在项目中独立管理语言、环境变量和任务的工具

冲他可以帮我们管理好每个项目各自需要的运行环境、版本,高低得试试看。

就如它首页说的那样:Your dev env, already prepped.

Windows 版本的可以参考这位老哥的: 半砚松风:从 Volta 迁移到 mise:Windows 下 Node 版本管理切换记录

我这边补充一下 macOS 版本的

卸载!

如果你之前安装了 Volta,需要迁移 mise,需要先卸载 Volta。否则两者环境逻辑冲突,共存会导致版本切换异常、命令失效

第一步:删除 Volta 目录

bash 复制代码
rm -rf ~/.volta

第二步:清理 PATH

Volta 安装时在 ~/.zshrc(macOS 默认)加了这两行,手动删掉或执行命令批量清除:

bash 复制代码
# macOS 默认 zsh
sed -i '' '/VOLTA_HOME/d' ~/.zshrc
sed -i '' '/volta\/bin/d' ~/.zshrc

# 若曾用 bash 也顺手清一下
sed -i '' '/VOLTA_HOME/d' ~/.bash_profile 2>/dev/null
sed -i '' '/volta\/bin/d' ~/.bash_profile 2>/dev/null

安装 mise

惯例官网:mise.jdx.dev/getting-sta...

bash 复制代码
# 下载&安装
curl https://mise.run | sh
# 或
brew install mise

# 验证结果(一下为默认安装目录)
~/.local/bin/mise --version

激活 mise

对于交互式的 shell 命令行,激活 mise 会更方便

1. 以 curl https://mise.run | sh 方式安装的
shell 复制代码
# bash
echo 'eval "$(~/.local/bin/mise activate bash)"' >> ~/.bashrc

# zsh
echo 'eval "$(~/.local/bin/mise activate zsh)"' >> ~/.zshrc

# fish
echo '~/.local/bin/mise activate fish | source' >> ~/.config/fish/config.fish
2. 以 brew 方式安装
shell 复制代码
# bash
echo 'eval "$(mise activate bash)"' >> ~/.bashrc

# zsh
echo 'eval "$(mise activate zsh)"' >> ~/.zshrc

修改完 rc 文件后重启你的 shell 会话 。运行 mise dr|doctor 以验证所有设置是否正确。

激活成功后,可以直接访问 mise

全局配置安装

sh 复制代码
mise use --global node@24
node -v
# v24.16.0

此时 mise 更新了全局配置:~/.config/mise/config.toml

toml 复制代码
[tools]
node = "24"

项目配置安装

对应 Volta pin 命令

sh 复制代码
cd /yourProject
mise use node@14.21.3
mise use yarn@1.22.19

此时会在你当前目录下生成一个 mise.toml 文件

测试是否生效:

bash 复制代码
# 当前项目目录
node -v
# 14.21.3

# 返回上一级目录
cd ..
node -v
# 24.16.0

ps:如果你的项目已经有了 mise.toml 文件,你可以直接 mise install 安装所有工具

Volta VS mise 对照

场景 Volta 命令/逻辑 mise 命令/逻辑
安装工具 volta install xxx mise install xxx
固化项目版本 volta pin xxx mise use xxx
设置全局默认 volta default xxx mise default xxx
版本列表查看 volta list mise list
环境自动切换 支持 支持(更稳定)
多语言工具管理 不支持 全支持

总结

总的来说,mise 从功能上可以完美替代之前的 Volta,并且扩展了很多额外的能力,文档中内容十分丰富,大家可以自行探索

常用命令速查

sh 复制代码
# 查看 mise 识别到的所有工具 
mise ls

# 查看当前生效的工具版本 
mise ls --current 

# 安装并写入全局配置 
mise use -g node@24 

# 安装并写入当前项目配置 
mise use node@14 

# 安装 mise.toml
mise install 

# 从配置中移除工具 
mise unuse node@14 

# 删除已安装工具版本,但不改配置
mise uninstall node@14 

# 检查环境问题 
mise doctor
相关推荐
To_OC2 小时前
写了三遍 Todo List,我终于搞懂了 React 父子组件到底怎么通信
前端·javascript·react.js
勇往直前plus3 小时前
Vue3(篇一) 核心概念——响应式模板语法与组件基础
前端·javascript·vue.js
咩咩啃树皮3 小时前
第43篇:Vue3计算属性(computed)完全精讲——缓存机制、依赖计算、业务最优解
前端·vue.js·缓存
徐小夕5 小时前
花了一周,3亿tokens,我开源了一款 Word 文档智能审查平台,文稿自动质检+可视化分析,告别低效人工审核
前端·算法·github
kyriewen6 小时前
别再乱用useEffect了——你写的10个里有8个不该存在
前端·javascript·react.js
Ivanqhz6 小时前
Rust &‘static str浅析
java·前端·javascript·rust
IT_陈寒7 小时前
SpringBoot这个分页坑,我踩了三天才爬出来
前端·人工智能·后端
颜酱7 小时前
05 | 召回前置准备:根据业务数据库生成各数据库(读取配置阶段)
前端·人工智能·后端
zandy10117 小时前
衡石 Agentic BI的ReAct 推理框架在 Agentic BI 中的工程化实践
前端·javascript·react.js
罗超驿7 小时前
JavaEE进阶之路:从Web架构原理到HTML标签全解析
前端·html·web·javaee