SuperAPI AI 工具集

mise-project-isolation

编程与开发

查看项目

更新于 10-16 06:24

技能介绍

用途:解决同一台机器上多个项目共用全局 Node 或 Python 版本、彼此干扰的问题。用 mise 按项目固定运行时,cd 进入目录时自动切换。

主要能力:在仓库根目录放 .mise.toml,用 [tools] 段固定精确版本(不要用范围),例如 python = "3.11"、node = "22.22.3",只写项目实际用到的运行时;简单的非机密静态环境变量可写在 [env] 段,无需 direnv。

必要用法:mise 需在 shell 中激活(如 zsh 模块里执行 eval "$($HOME/.local/bin/mise activate zsh)")。新机器安装用 curl -fsSL https://mise.run | sh;在仓库根目录执行 mise trust 和 mise install。使用 Python 时同时添加 .python-version(内容如 3.11)供 uv 解析;.gitignore 加入 .venv/、node_modules/、dist/。克隆后的完整流程:mise trust && mise install、uv sync、pnpm install、apm install --frozen、direnv allow。选版本应固定当前在用的版本,可用 cat .venv/pyvenv.cfg | grep version、node --version 查询,mise ls-remote python 等列出可选版本。

限制:需为每位成员安装并激活 mise;每个项目要执行一次 mise trust;不替代 uv 的 Python 包与虚拟环境管理,不替代 direnv 的退出卸载与密钥加载,不替代 Docker 管理数据库等依赖,也不替代 CI/CD 中的版本固定;修改 .mise.toml 的 Python 版本不会自动重建 .venv,需 rm -rf .venv && uv sync。未提供具体收费、平台与效果信息。