mcpField
F
fix-dependabot

fix-dependabot

github.com/remotion-dev开发68.6k998 次安装今天更新
代码仓库

关于 fix-dependabot

用于修复 Bun 单体仓库中 Dependabot PR 的仓库技能。它会同步更新其他包的依赖版本并重新生成锁文件,检查变更,也会处理依赖冲突或可能有破坏性的主版本升级。

主要功能

  1. 01查看 Dependabot PR 详情
  2. 02更新单体仓库中匹配的包版本
  3. 03通过 `bun install` 重新生成 `bun.lock`
  4. 04提交前核对已修改文件
  5. 05提交、推送并切回先前分支

适用场景

  1. 01同步 Dependabot 版本更新到其他包
  2. 02依赖更新后刷新过期锁文件
  3. 03评估主版本升级或依赖冲突

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/remotion-dev/remotion --skill fix-dependabot

安装后在 Claude Code 中输入/fix-dependabot确认已加载。

详细介绍

Dependabot PR 只会更新一个 package.json,且不会运行 bun install,因此 bun.lock 文件会过时,而 monorepo 中的其他包仍引用旧版本。此技能会修复这两个问题。

步骤

  1. 获取 PR 信息 — 使用 gh pr view <number> --json headRefName,files,title,body 确定分支名称、更新的依赖项以及新旧版本。

  2. 检出分支:

git fetch origin <branch>
git checkout <branch>
  1. 更新 monorepo 中的所有实例 — Dependabot 只会修改一个包。搜索其他所有引用了该依赖旧版本的 package.json 文件,并一并更新:
rg '"<dependency>": "[~^]?<old-version>"' --glob '**/package.json'

将每个匹配项都更新为新版本。保留各个包原有的版本前缀样式(^、~ 或精确版本)。

  1. 从仓库根目录运行 bun install,重新生成 bun.lock。

  2. 验证 — 运行 git status,确认只有 bun.lock 和预期的 package.json 文件被修改。如果还有其他意外变更,请先调查再继续。

  3. 提交并推送:

git add -u
git commit -m "Update <dependency> to <version> across all monorepo packages"
git push
  1. 切回 — 返回之前所在的分支(通常是 main):
git checkout main

注意事项

  • Dependabot 会提示“只要你不自行修改此 PR,Dependabot 就会解决其中的任何冲突”——但更新锁文件和同级包属于预期工作流,不会造成问题。
  • 如果升级的是主版本(例如 vite 5 → 6),请考虑这次升级是否合适,或者是否应该忽略。检查是否存在重大变更。
  • 如果 bun install 失败,依赖项版本可能与其他包存在冲突。在这种情况下,请关闭 PR 并发表评论说明原因。

评论

支持 Markdown