如果您在仓库中实施了分支保护,便可设置必需审查。 有关实施分支保护的更多信息,请参阅“配置受保护分支”。有关设置必需审查的更多信息,请参阅“对拉取请求启用必需审查”。
仓库管理员可以要求所有合并请求在合并到受保护分支之前,获取必要数量的具有仓库写入或管理权限的人员或者指定代码所有者的批准。 更多信息请参阅“关于受保护分支”。
启用所需的审查时,具有仓库访问权限的任何人都可以批准拉取请求中的更改。 但若没有必要数量的具有仓库写入或管理权限的审查者批准您的拉取请求,您将无法合并拉取请求。 有关仓库权限级别的更多信息,请参阅“组织的仓库权限级别”。如果要求获得指定代码所有者的审查,并且拉取请求会影响具有指定所有者的代码, 则需要该所有者的批准。
如果具有管理员权限的人员在审查中选择 Request changes(申请更改)选项,则拉取请求必须经此人批准后才可合并。 如果申请更改拉取请求的审查者没有空,则具有仓库管理员或写入权限的任何人都可忽略阻止审查。 更多信息请参阅“忽略拉取请求审查”。
注:仓库管理员可以限制对特定的人员或团队忽略拉取请求审查。 更多信息请参阅“启用拉取请求的必需审查”。
如果将代码修改提交推送到已批准拉取请求的分支,在仓库管理员设置了旧审查忽略时可能会忽略审批。 更多信息请参阅“对拉取请求启用必需审查”。如果推送非代码修改提交(例如将基础分支合并到拉请求的分支),则这不适用。 有关基础分支的信息,请参阅“关于拉取请求”。
除非必需审查已设置为包含仓库管理员,否则具有管理员权限的人员可以合并拉取请求,而不管其他管理员是否审查。
在所有必需的审查者批准某个拉取请求后,如果其他打开的拉取请求具有待定或被拒绝的审查,并且这些拉取请求有头部分支指向同一提交,则您无法合并该拉取请求。 具有写入或管理员权限的人需要批准或忽略其他拉取请求的阻止审查,然后您才可以合并。
有具有写入或管理员权限的人员批准之前,您无法将拉取请求合并到受保护分支。 如果存在待处理或拒绝的审查,您会收到错误消息:
remote: error: GH006: Protected branch update failed for refs/heads/master.
remote: error: Changes have been requested.