功能介绍
Mise 是一个现代化的多运行时环境管理器,它让开发者能够轻松管理不同项目中的各种开发工具和运行时环境。作为 asdf 的替代品,Mise 提供了更友好的使用体验和更完整的功能支持。
核心特性
- 便捷的多语言支持:
- 官方支持:Bun, Deno, Erlang, Go, Java, Python, Node.js, Ruby 等主流语言
- 插件扩展:完全兼容 asdf 插件生态系统,可以通过插件支持更多开发工具
- 智能的环境管理:
- 项目隔离:每个项目可以使用独立的运行时版本
- 自动切换:进入项目目录时自动切换到对应的环境配置
- 简单的版本控制:
- 支持 latest、lts 等便捷的版本标识
- 全局和项目级的版本管理
日常使用指南
插件管理
# 查看所有可用的插件
mise plugins list-all
# 安装插件(比如要使用 node)
mise plugins add node
# 查看已安装的插件
mise plugins ls
版本管理命令
# 查看远程可用版本
mise ls-remote node # 列出所有可用的 Node.js 版本
mise ls-remote python # 列出所有可用的 Python 版本
# 查看已安装的版本
mise ls node # 查看已安装的 Node.js 版本
mise ls # 查看所有工具的已安装版本
# 安装特定版本
mise install [email protected] # 安装指定版本的 Node.js
mise install [email protected] # 安装指定版本的 Python
# 设置版本
mise use --global [email protected] # 设置全局默认版本
mise use [email protected] # 设置当前项目的版本
mise use node@lts # 使用 LTS 版本
环境变量配置
# 设置环境变量
mise set NODE_ENV=development # 设置环境变量
# 查看当前配置
mise settings # 查看所有设置
实际使用场景
-
新项目初始化:
# 进入新项目目录 cd my-new-project # 设置项目所需的 Node.js 版本 mise use [email protected] # 现在项目就会使用 Node.js 18.12.0 node --version # 输出:v18.12.0
-
多项目切换:
# 项目 A 使用 Node.js 18 cd project-a mise use [email protected] # 项目 B 使用 Node.js 16 cd project-b mise use [email protected]
当使用 VS Code 或其他编辑器打开项目时,Mise 会自动加载项目配置的版本,不需要手动切换,非常方便。
配置文件示例
# .mise.toml 示例
[tools]
node = '18.12.0'
python = '3.10.0'
[env]
NODE_ENV = 'development'
这个配置文件会自动生成在你的项目目录下,记录了项目所需的工具版本和环境变量。每次进入项目目录时,Mise 都会自动应用这些配置。
关于环境变量管理的建议
虽然 Mise 提供了环境变量管理功能,但我个人更推荐使用 direnv 来管理环境变量。原因如下:
- 专注性:direnv 是专门为环境变量管理设计的工具,功能更加完善
- 灵活性:可以使用 shell 脚本编写更复杂的环境变量配置
- 通用性:不仅限于开发环境,可以用于任何需要环境变量管理的场景
- 兼容性:与各种开发工具和环境完美配合
这样的工具分工会让整个开发环境更加清晰:
- Mise 专注于运行时版本管理
- direnv 专注于环境变量管理
详细的 direnv 使用方法可以参考我的另一篇文章:direnv:更好的环境变量管理工具。
安装与配置
安装
请参考 官方文档 获取详细的安装与配置信息。
配置
Mise 的配置文件位于 ~/.mise.toml
,用户可以在此文件中指定所需的工具版本和环境变量。
使用示例
版本管理操作
# 查询可用版本
mise ls-remote node # 列出所有可用的 Node.js 版本
mise ls node # 列出已安装的 Node.js 版本
# 版本安装与切换
mise use -g [email protected] # 全局安装指定版本
mise use [email protected] # 项目级安装
mise use node@lts # 安装 LTS 版本
mise use node@latest # 安装最新版本
# 多运行时并存
mise use node@18 [email protected] # 同时配置多个运行时版本
高级配置示例
# .mise.toml 示例
[tools]
node = '22.9.0'
python = '3.10.0'
[env]
NODE_ENV = 'development'
PYTHONPATH = '${PWD}/src'
[tasks]
start = 'npm start'
test = 'pytest tests/'
性能优化建议
-
预安装常用版本:
mise install node@lts [email protected]
-
启用并行安装:
mise install -p node@18 [email protected] [email protected]
💭 欢迎留下你的想法!
如果这篇文章对你有帮助,欢迎分享你的使用经验
有任何问题或建议,也请告诉我
我会及时收到通知并回复你的评论 😊