mise installs migrate
- Usage:
mise installs migrate [-n --dry-run] [TOOL@VERSION]… - Effect: modifies state
- Source code:
src/cli/installs/migrate.rs
将旧布局的安装重新安装到 identity 安装布局。
在启用 install_layout = "identity" 之前创建的安装仍位于 installs/<tool>/<version> 中,并继续工作;由于工具会在 shebang、虚拟环境和包管理器文件中记录自身路径,mise 不会自动移动它们。此命令会将每个安装重新安装到独立的 <label>-<hash> 目录,移除旧目录并将版本链接指向新目录,因此原先指向旧目录的路径仍能解析。
每个版本都会从后端重新安装,而不是复制,因此文件会按新路径写入。请在没有进程使用这些工具时运行:安装替代版本期间旧目录会被移到一旁,失败时会恢复。记录的后端与当前工具解析到的后端不一致的版本会保留不动;仍使用旧布局的 http:、rust 和 dotnet 工具也会保留。
无法重新安装的版本(例如发布被撤回、签名者变化或网络不可用)不会直接报错:其目录会原样移动到 identity 布局,并由同一个版本链接指向。只有连移动也失败的版本才会保留旧目录,并报告为仍在旧布局中。命令结束时会统计已迁移、已搬迁、已保留和失败的数量;只有迁移过程本身出错才会失败。
Arguments
[TOOL@VERSION]…— 只迁移这些工具或其指定版本默认迁移所有旧布局安装。
Flags
-n --dry-run— 显示将要移动的内容但不修改任何内容-h --help— 显示帮助
Examples
列出将要移动的旧布局安装
mise installs migrate --dry-runMove every installed node and one python version
mise installs migrate node [email protected]