Mergify 合并保护用于控制 PR 何时允许合并,包含三类机制。
用途与能力:Depends-On 按 PR 依赖链阻止合并,直到指定 PR 先合并;Merge-After 按时间门控推迟合并;Scheduled Freezes 按仓库或条件暂停合并。
用法:Depends-On 与 Merge-After 为内置功能,只需在 PR 描述(使用 mergify stack push 时写在提交信息正文)添加头部,无需 .mergify.yml 配置。Depends-On 支持 #123、完整 URL、org/repo#789 三种格式,可多行;引用的 PR 须位于启用 Mergify 的仓库且同属一个 GitHub 组织,循环依赖与自引用会被静默忽略。Merge-After 使用 ISO 8601 时间戳,支持仅日期、无时区(默认 UTC)、Z、UTC 偏移和 IANA 时区;两个头部可同时使用。
冻结通过 CLI 管理:mergify freeze list(可加 --json)、mergify freeze create OPTIONS、mergify freeze update FREEZE_ID OPTIONS、mergify freeze delete FREEZE_ID。创建需 --reason 与 --timezone,可选 --start、--end、-c 条件、-e 排除;更新时 -e 会替换整个排除列表;删除活动中的冻结需提供 --reason。命令需 Mergify 凭据,可先运行 mergify auth login,或用 --token/-t(环境变量 MERGIFY_TOKEN)、--repository/-r、--api-url/-u(默认 https://api.mergify.com)。
适用场景:跨仓库功能、模式迁移先于应用代码、共享库先于使用方、协调发布、维护窗口、禁运期、事故响应与部署冻结。
限制:资料未提供价格、平台支持范围及配额等信息。