本文目录导读:

在开源项目(GitHub 上的仓库)里,其实没有真正的“两队中场”,但你可以把两支开发团队/两个竞争项目类比成两支球队,把中场控制力理解为:谁能掌控 issue/PR 的节奏、讨论话语权、合并决策权和社区注意力。
下面给一套可操作的观察框架。
先明确类比
| 足球概念 | 开源项目对应 |
|---|---|
| 中场 | 核心维护者、reviewer、discussion 参与者 |
| 控球率 | PR/issue 的发起与主导比例 |
| 传球成功率 | PR 被合并率、review 响应质量 |
| 拦截 | 关闭重复 issue、驳回低质量 PR |
| 节奏控制 | release 频率、roadmap 话语权 |
| 关键传球 | 核心功能设计、RFC 提案 |
看“中场控制力”的 6 个维度
谁在主导讨论(话语权)
- 看 issue / discussion / RFC 里,哪一方的人发言最多、被引用最多、被 maintainer 采纳最多。
- 工具:GitHub Insights、
gh api、CHAOSS 指标、Orbit(开源社区分析工具)。 - 指标:
- 发言占比
- 被回复/被点赞比例
- 提案被 accept 的比例
谁在控制合并(决策权)
- 看 PR 的 reviewer 和 merger 分布。
- A 队的人大量 review/merge B 队提交的 PR,说明 A 队在中场压制。
- 指标:
- 各队 review 次数
- merge 权限持有者分布
- PR 平均等待时间(等待越短,说明越被“自己人”掌控)
谁在定义方向(节奏控制)
- 看 roadmap、release note、RFC、design doc 的作者。
- 谁写的 RFC 被采纳,谁就在控制中场节奏。
- 指标:
- RFC/设计提案作者分布
- release manager 归属
- milestone 由谁设定
谁在“拦截”(防守/拦截)
- 看 issue 关闭、PR 驳回、stale bot 触发由谁操作。
- 大量关闭对方提出的 issue/PR = 强拦截。
- 指标:
- close without merge 比例
- 各队关闭他人 PR 的次数
- 争议 issue 的最终裁决者
谁在吸引社区(控球吸引力)
- 看 star、fork、contributor 增长归因于哪一方的功能/版本。
- 看 外部贡献者更愿意跟哪一队互动。
- 指标:
- 新 contributor 首次 PR 被谁 review
- 各队相关 feature 的讨论热度
谁在“关键传球”(核心贡献)
- 看 核心模块、关键 bug fix、性能优化由哪队完成。
- 指标:
- 按目录/模块统计 commit 归属
- critical bug 修复者分布
- 安全响应负责人
具体怎么查(实操)
# 1. 看 PR 合并者分布
gh pr list --state merged --limit 500 --json author,mergedBy,reviews
# 2. 看 issue 关闭者
gh issue list --state closed --limit 500 --json author,closedBy
# 3. 看某目录的 commit 归属
git shortlog -sn -- path/to/core/
# 4. 看 RFC/discussion 参与
gh api repos/{owner}/{repo}/discussions
配合:
- GitHub Insights → Contributors / Community
- CHAOSS 指标(Bus Factor、Review Efficiency)
- Orbit / GrimoireLab 做社区图谱
判断“中场控制力”的结论模板
在 X 项目中,A 队控制了约 60% 的 review 和 70% 的 merge 决策,RFC 提案采纳率 80%,release manager 长期由 A 队担任;B 队虽然在 issue 发起量上占优(55%),但 PR 合并率仅 40%,且核心模块 commit 占比不足 30%,A 队在中场控制力上明显占优,B 队更偏“边路突击”(提 issue、提想法)但缺乏终结权。
一句话总结
开源项目的“中场控制力” = 谁在 review、谁在 merge、谁在写 RFC、谁在定 release。
把这四个数据拉出来按团队分组统计,对比就一目了然。
如果你有具体的两个项目或两个团队,我可以帮你设计一套具体的抓取脚本和对比表格。