Skip to main content

关于拉取请求审查

审查允许协作者评论拉取请求中提议的更改、审批更改或在拉取请求合并之前请求进一步更改。 仓库管理员可要求所有拉取请求在合并之前获得批准。

关于拉取请求审查

打开拉取请求后,具有读取权限的任何人都可以查看该拉取请求提议的更改并进行评论。 您也可以建议对代码行的具体更改,作者可直接从拉取请求应用这些更改。 有关详细信息,请参阅“审查拉取请求中的建议更改”。

默认情况下,在公共存储库中,任何用户都可以提交批准或请求更改拉取请求的评论。 组织所有者和存储库管理员可以限制谁能够批准拉取请求审查或请求更改。 有关详细信息,请参阅“管理组织中的拉取请求审查”和“管理存储库中的拉取请求审查”。

仓库所有者和协作者可向具体的个人申请拉取请求审查。 组织成员也可向具有仓库读取权限的团队申请拉取请求审查。 有关详细信息,请参阅“请求拉取请求审查”。 可以指定要自动分配给整个团队的团队成员的子集。 有关详细信息,请参阅“管理团队的代码评审设置”。

审查允许讨论提议的更改,帮助确保更改符合仓库的参与指南及其他质量标准。 您可以在 CODEOWNERS 文件中定义哪些个人或团队拥有代码的特定类型或区域。 当拉取请求修改定义了所有者的代码时,该个人或团队将自动被申请为审查者。 有关详细信息,请参阅“关于代码所有者”。

你可以对需要审查的拉取请求预定提醒。 有关详细信息,请参阅“管理拉取请求的预定提醒”。

包含行注释的拉取请求更改的标头

审查有三种可能的状态:

  • 注释:提交一般反馈,但不明确批准更改或请求其他更改。
  • 批准:提交反馈并批准合并拉取请求中提议的更改。
  • 请求更改:提交在拉取请求合并之前必须解决的反馈。

审查状态图像

提示

  • 如果启用了必需的审查,并且对存储库具有写入、管理员或所有者访问权限的协作者提交请求更改的审查,则在同一协作者提交另一次要求批准拉取请求中更改的审查之前,拉取请求不能合并 。
  • 即使没有获得批准审查,或者请求更改的审查者离开了组织或者联系不上,仓库所有者和管理员也可合并拉取请求。
  • 如果同时启用了必需审查和过期审查,并且代码修改提交已推送到批准的拉取请求分支,则批准将予驳回。 拉取请求必须经过再次审查和批准才可合并。
  • 当多个打开的拉取请求时分别有指向同一提交的头部分支时,如果一个或两者有待定或被拒绝的审查,您将无法合并它们。
  • 如果存储库需要具有写入或管理员权限的人员批准审查,则具有这些权限的人员的任何审批都用绿色复选标记表示,而不具备这些权限的人员的审批带有灰色复选标记。 带有灰色复选标记的审批不会影响拉取请求是否可以合并。
  • 拉取请求作者无法批准自己的拉取请求。

您可以在“对话”时间表中查看拉取请求收到的所有审查,也可在拉取请求的合并框中按仓库所有者和协作者查看审查。

合并框中的审查图像

提示:可使用搜索限定符 review-requested:[USERNAME]team-review-requested:[TEAMNAME] 查找请求你或你所属团队审查的拉取请求。 有关详细信息,请参阅“搜索问题和拉取请求”。

Resolving conversations

You can resolve a conversation in a pull request if you opened the pull request or if you have write access to the repository where the pull request was opened.

To indicate that a conversation on the Files changed tab is complete, click Resolve conversation.

Pull request conversation with Resolve conversation button

The entire conversation will be collapsed and marked as resolved, making it easier to find conversations that still need to be addressed.

Resolved conversation

If the suggestion in a comment is out of your pull request's scope, you can open a new issue that tracks the feedback and links back to the original comment. For more information, see "Opening an issue from a comment."

Discovering and navigating conversations

You can discover and navigate to all the conversations in your pull request using the Conversations menu that's shown at the top of the Files Changed tab.

From this view, you can see which conversations are unresolved, resolved, and outdated. This makes it easy to discover and resolve conversations.

Showing the conversations menu

重新请求审核

您可以重新请求审查,例如在对您的拉取请求做出实质性更改之后。 要向审查者请求新的审查,请在“对话”侧栏中单击 图标。

必要的审查

仓库管理员可以要求所有拉取请求在有人将拉取请求合并到受保护分支之前获得特定数量的批准审查。 您可以要求仓库中具有写入权限的人或指定代码所有者批准审查。 有关详细信息,请参阅“关于受保护的分支”。

提示:如有必要,对存储库具有管理员或写入访问权限的人员可以消除拉取请求评审。 有关详细信息,请参阅“消除拉取请求审查”。

延伸阅读