Skip to content

gvt update — 更新钩子配置

扫描 .gvt/hook/ 下所有模块配置,自动检测并补充新版本新增的字段与检查项,同时完整保留用户已有的自定义参数。

用法

bash
gvt update              # 更新所有模块配置
gvt update --dry-run    # 仅预览变更,不写入文件

更新策略

  1. 重新探测工具链:对每个模块目录重新执行 hooks.Detect,生成当前 gvt 版本的最新默认配置。
  2. 合并旧配置:将旧配置合并进新默认值——旧值覆盖新默认,但新默认中独有的字段(如新增的 go_nilaway 检查项)保留。
  3. 智能合并 check_order:保留用户已有的检查项顺序,将新版本新增的检查项追加到末尾。
  4. 更新 gvt_version:将配置文件中的版本号更新为当前 gvt 版本。

保留 vs 新增

类型行为
已有检查项的 enabled/command/args/warn_lines保留用户自定义值
已有 check_order 中的顺序保留用户顺序
新增检查项(如 go_nilaway追加check_order 末尾,使用默认值
新增的 *CheckConfig添加,使用默认值
gvt_version更新为当前版本

参数

参数简写说明
--dry-run-n仅预览变更,不写入文件

典型场景

bash
# 升级 gvt 后,更新项目配置以获取新增的检查项
gvt update --dry-run    # 先预览哪些模块会变更
gvt update              # 确认后执行更新

# 更新后重新生成规范文档
gvt doc

更新不会删除用户已有的任何自定义配置,仅补充缺失的新字段。

基于 MIT 协议开源