mise lock
- 用法:
mise lock [FLAGS] [TOOL]… - 效果: 修改状态
- 源代码:
src/cli/lock.rs
更新所有指定平台的锁文件校验和和 URL
更新锁文件中已指定的所有平台的校验和和下载 URL。 如果不存在锁文件,则根据当前配置显示将要创建的内容, 包括任务声明的工具。 这使你能够刷新当前使用平台之外的其他平台的锁文件数据。 操作当前配置根目录中的锁文件。使用 TOOL 参数可指定要定位的工具。
参数
[TOOL]…— 要在锁文件中更新的工具 例如:node python 如果未指定,将更新所有已配置的工具和任务专用工具
标志
-g --global— 仅定位全局配置锁文件(~/.config/mise/mise.lock 和系统配置) 默认情况下,仅锁定活动项目配置根目录-j --jobs <JOBS>— 并行运行的任务数 小于 1 的值将按 1 处理环境变量:
MISE_JOBS-n --dry-run— 显示将要更新的内容,但不进行更改-p --platform <PLATFORM>— 要定位的平台列表,以逗号分隔 例如:linux-x64,macos-arm64,windows-x64 如果未指定,将更新锁文件中已有的所有平台--bump— 根据最新可用版本重新解析模糊版本选择器默认情况下,
mise lock会刷新当前锁定版本的元数据。 使用此标志后,诸如 "latest"、"lts" 或 "20" 这样的前缀选择器 会根据远程端最新的匹配版本重新解析,因此锁文件会推进,而不会安装任何内容。配置文件不会被修改: 明确固定的版本会解析为自身并保持不变 (使用mise upgrade --bump可重写 mise.toml 中的固定版本)。--json— 以 JSON 格式输出版本变更输出一个描述锁文件版本变更的对象数组: name、backend、lockfile、old_versions、new_versions。 版本列表保留配置文件/锁文件中的顺序,不会排序。 只报告版本级别的变更:未变更版本的校验和/URL 刷新不会生成条目,因此普通的
mise lock --json通常会输出[],同时仍然更新锁文件。 抑制人类可读的输出。与--dry-run结合使用,可以在不写入锁文件的情况下检测可用更新。--local— 更新 mise.local.lock,而不是 mise.lock 用于在 .local.toml 配置中定义的工具--minimum-release-age <MINIMUM_RELEASE_AGE>— 仅锁定在此时间长度或日期之前发布的版本支持类似 "2024-06-01" 的绝对日期和类似 "90d" 或 "1y" 的相对时长。 这只影响类似 "20" 或 "latest" 的模糊版本匹配。 明确固定的版本,如 "22.5.0",不会被筛选。 现有的匹配锁文件条目会被保留,不会仅因该标志而降级。
--upgrade— 将旧版锁文件升级为最新格式现有的无版本锁文件使用格式版本 0,并以其他方式保留,以避免锁文件意外漂移。此标志会将它们 升级为包含特定请求版本绑定的最新格式。 格式升级始终处理每个已配置的工具,且不能与工具参数结合使用。
-h --help— 打印帮助
示例:
mise lock # 为所有通用平台更新锁文件
mise lock node python # 仅更新 node 和 python
mise lock --platform linux-x64 # 仅更新 linux-x64 平台
mise lock --dry-run # 显示将会更新的内容
mise lock --bump # 将 "latest" 或 "20" 等选择器重新解析为最新的匹配版本
mise lock --bump --dry-run --json # 以 JSON 格式列出可用更新,但不写入
mise lock --minimum-release-age 2024-01-01 # 锁定在 2024-01-01 之前发布的 latest/模糊版本
mise lock --local # 为本地配置更新 mise.local.lock
mise lock --global # 仅更新全局配置锁文件