如何安全地更新 SpecKit 模板并保留自定义配置
解决 SpecKit 升级时的覆盖风险:通过 AI 驱动的交互式工作流,在更新 GitHub 模板的同时自动识别并保留用户的自定义修改,避免手动对比代码的低效。
为什么需要这个技能
在使用 SpecKit 维护项目规范时,开发者经常会根据具体项目需求修改模板文件。然而,传统的 git pull 或直接覆盖更新会导致这些自定义配置被抹掉。
speckit-updater 引入了一套基于文件哈希(Hash)的对比机制。它能精准识别哪些文件是原封不动的,哪些被用户修改过。在更新前,AI 会为你呈现一个详细的变更清单(包含版本对比、冲突文件、备份路径),只有在用户确认后才会执行更新,确保升级过程可预测且可回滚。
适用场景
- 模板升级:需要获取 GitHub 上最新的 SpecKit 模板,但不能丢失当前项目的自定义设置。
- 环境初始化:在新项目中快速安装 SpecKit 基础结构(
.specify/目录)。 - 版本回滚:更新后发现不兼容,需要快速恢复到之前的备份状态。
- 冲突解决:面对模板更新与本地修改的冲突,需要通过 VS Code 合并编辑器逐一处理。
核心工作流
该技能采用“预检
- 触发预检:运行
/speckit-updater。AI 将调用update-wrapper.ps1脚本,分析当前版本与远程最新版本的差异。 - 状态解析:
- 如果是更新场景:AI 会显示 Markdown 格式的总结(版本号、待更新文件、冲突项),并询问是否执行。
- 如果是安装场景:AI 会检测到缺少
.specify/目录,自然地询问用户是否安装最新模板。
- 执行操作:用户回复“同意”或“安装”后,AI 自动添加
-Proceed标志重新运行脚本。 - 冲突处理:若存在冲突,脚本会引导用户通过 VS Code 的 diff 工具逐个文件地选择“保留我的”、“使用新版”或“手动合并”。
- 最终验证:更新完成后,自动更新
manifest.json记录版本,并保留最近 5 份备份以备不时之需。
下载和安装
下载 speckit-updater 中文版 Skill ZIP
解压后将目录放入你的 AI 工具 skills 文件夹,重启工具后即可使用。具体路径参考内附的 USAGE.zh.md。
你可能还需要
暂无推荐