用途
GitHub Multi-Repo 是一个跨仓库集群编排(swarm orchestration)技能,面向组织级自动化与协作。它用于处理多仓库协调、同步操作、依赖管理、安全更新以及组织范围内的策略变更。
主要能力
- 跨仓库初始化:多仓库集群(swarm)设置
- 仓库发现:自动检测相关仓库
- 同步操作:协调一致的变更
- 依赖管理:跨仓库更新
- 安全协调:组织范围内的补丁
使用方式
该技能主要通过 gh CLI 与 npx ruv-swarm 命令操作。
列出组织仓库:
gh repo list org --limit 100 --json name,description,languages
跨仓库搜索代码:
gh search code "pattern" --repo org/repo1 --repo org/repo2
批量克隆仓库:
for repo in repo1 repo2 repo3; do
gh repo clone org/$repo
done
查看仓库信息:
gh api repos/org/repo --jq '{name, default_branch, languages, topics}'
初始化多仓库集群:
npx ruv-swarm github multi-repo-init \
--repo-details "$REPO_DETAILS" \
--repos "org/frontend,org/backend,org/shared" \
--topology hierarchical \
--shared-memory \
--sync-strategy eventual
同步依赖更新(示例:将 TypeScript 更新到 5.0.0):先创建跟踪 issue,再遍历包含 TypeScript 的仓库,克隆、安装依赖、运行测试,测试通过后创建分支、提交并推送、发起 PR;测试失败则在跟踪 issue 中留言。
安全补丁协调(示例:更新 lodash 到 4.17.21):扫描所有仓库中受影响的依赖,创建安全跟踪 issue,逐个仓库克隆、安装修复版本、运行 npm audit fix、创建分支提交并推送、发起带 security 标签的 PR。
配置
可通过 .swarm/multi-repo.yml 定义组织、仓库列表(含名称、URL、角色、agents)、协调方式(拓扑、通信、内存)以及依赖关系。
同步模式支持:
- 最终一致(eventual):设置 max-lag、重试次数与退避策略
- 强一致(strong):使用 raft 共识、quorum、超时
- 混合(hybrid):默认最终一致,对安全更新、依赖更新等使用强一致覆盖
适用场景
- 跨多个仓库协调变更
- 组织级依赖更新
- 同步安全补丁
- 跨仓库重构操作
- 多服务微服务协调
- 库更新及其下游消费者更新
具体用例命令包括:微服务协调(github microservices)、库更新(github lib-update)、组织级策略(github org-policy)。
监控与可视化
- 多仓库仪表盘:github multi-repo-dashboard
- 依赖图:github dep-graph(支持 mermaid 格式)
- 健康监控:github health-check
故障排查
- 连接问题:github diagnose-connectivity
- 内存同步:github debug-memory
最佳实践
- 仓库组织:清晰的角色与边界、一致的命名规范、文档化依赖、共享配置标准
- 通信:合适的同步策略、熔断机制、监控延迟与失败、清晰的错误传播
- 安全:安全的跨仓库认证、加密通信通道、所有操作的审计追踪、最小权限原则
限制
资料未提供该技能的具体收费、价格、平台支持范围、性能指标或效果数据,这些信息暂未提供。