最近更新 检查
概述
一个 GitHub Action,用于检查拉取请求是否与源仓库的最新更改保持同步。
目标受众
社区
开发者
项目负责人
运维
摘要
GitHub Actions 配置为在拉取请求的 HEAD 提交上运行测试(例如,不是拉取请求的合并提交,合并提交是把拉取请求合并到目标分支的结果)。
因此,如果拉取请求与源仓库的最新更改不同步,即使 CI 测试通过,也有可能引入破坏性更改。
GitHub 确实提供了一种在合并前确保拉取请求完全同步的方式,但对于像 cudf
这样提交量大的仓库,这将显著增加合并拉取请求所需的时间。
作为折衷,引入了 最近更新 检查,以确保拉取请求与相应的源仓库“合理地”保持同步。
这种方法不能保证不会引入破坏性更改,但有助于提供一些保证,确保拉取请求不会严重过时(类似于测试合并提交的方式)。
额外的测试信心来自于 RAPIDS 的夜间测试,它测试每个开发分支的 HEAD 提交。
最近更新 检查可以通过编辑 .github/ops-bot.yaml
文件中的以下值进行配置
# enables/disables the Recently Updated Check
recently_updated: true
# sets the threshold for how many commits behind the pull request must be to trigger a failure.
# defaults to 5 if not set
recently_updated_threshold: 5
注意,由于 RAPIDS 对拉取请求使用 squash commits,因此 recently_updated_threshold
值实际上意味着“自当前拉取请求上次更新以来,已有多少个拉取请求合并到源仓库中”。