SIG 审批者与维护者的实践指南
了解审批者和维护者如何管理 Issue 和贡献内容。
本页包含审批者与维护者使用的指南和一些通用实践。
加入流程
当贡献者希望承担更大责任的角色(如成为文档的审批者或维护者)时, 现有的审批者与维护者会负责引导他们完成入职流程:
- 他们将被添加到
docs-approvers
(或docs-maintainers
)组中。 - 他们将被加入 Slack 的
#otel-comms
、#otel-maintainers
以及其他团队的私有频道。 - 他们会被邀请订阅以下日历会议:
- 他们需要确认当前 SIG Comms 的会议时间是否适合自己; 如果不适合,应与现有的审批者和维护者协商,找出对大家都合适的时间。
- 他们需要查看并熟悉为贡献者提供的各类资源:
其他值得阅读的重要资源包括:
协作原则
- 审批者和维护者的工作时间和环境各不相同,因此所有交流应默认为“异步”沟通。 他们不应感到必须在非工作时间内做出回复。
- 如果审批者或维护者将在较长时间内(几天或一周以上)无法参与贡献,应在 #otel-comms 频道中说明,并更新 GitHub 的状态。
- 审批者和维护者应遵守 OTel 行为准则 和社区价值观。 他们应对贡献者保持友好与支持。若出现冲突、误解或任何使审批者/维护者感到不适的情况, 他们可以选择退出相关讨论、Issue 或 PR,并请求其他人接手。
代码审查
通用原则
- 如果 PR 分支
落后于主分支(out-of-date with the base branch)
,不需要频繁更新, 因为每次更新都会触发所有 CI 检查。通常只需在合并前更新即可。 - 非维护者提交的 PR 不应更新 git 子模块。虽然这种错误偶尔会发生,但应提醒作者不要担心, 我们会在合并前处理好。不过今后请确保使用更新过的 fork 仓库进行开发。
- 如果贡献者在签署 CLA 或提交中误用了错误的邮箱地址,应请他们修复该问题或重新 rebase PR。 最坏情况是关闭并重新打开 PR 来触发 CLA 检查。
- PR 作者应将 cspell 无法识别的词添加到每页的忽略列表中。只有审批者和维护者可将常用术语添加到全局忽略列表。
联合拥有的 PR
对于由 SIG 与文档组共同拥有的 PR(例如 collector、demo、某语言相关文档), 建议获得两个审批:一位文档审批者和一位 SIG 审批者。
- 文档审批者应为此类 PR 添加
sig:<name>
标签,并在 PR 中 @ 提及该 SIG 的-approvers
组。 - 在文档审批者完成审查并同意合并后,可添加标签
sig-approval-missing
, 表示该 PR 需要由对应 SIG 进一步审查。 - 如果在一定宽限期内(通常为两周,紧急情况除外)未获得 SIG 审批,文档维护者可自行判断是否合并该 PR。
来自机器人的 PR
针对机器人创建的 PR,可以采用以下处理流程:
- 自动更新注册表中版本号的 PR 可直接修复、审批并合并。
- 自动更新 SDK、零代码接入方式或 collector 的 PR 可审批合并,除非相关 SIG 明确表示应延迟合并。
- 自动更新规范(spec)的 PR 往往需要修改脚本才能通过 CI 检查。此类 PR 通常由 @chalin 处理。 若无需脚本更改,仍可审批合并,除非对应 SIG 要求延迟。
翻译类 PR
涉及翻译更新的 PR 应获得两位审批者的批准: 一位文档审批者和一位翻译审批者。其处理流程与联合拥有的 PR 类似。
合并 PR
维护者可使用如下流程合并 PR:
确保 PR 获得所有必要的审批,且所有 CI 检查均通过。
如果分支落后,可通过 GitHub UI 执行 rebase 更新。
更新后 CI 会重新运行,等待其通过,或者使用如下脚本在后台完成合并:
export PR=<PR 的 ID>; gh pr checks ${PR} --watch && gh pr merge ${PR} --squash
Feedback
Was this page helpful?
Thank you. Your feedback is appreciated!
Please let us know how we can improve this page. Your feedback is appreciated!