Skip to main content

审查拉取请求中的建议更改

在拉取请求中,你可以审查和讨论提交、更改的文件以及基本和比较分支中文件之间的区别(或“差异”)。

Tool navigation

关于审查拉取请求

最好一次评审拉取请求中的一个文件:

  • 检查拉取请求中每个已更改的文件。
  • 对特定更改留下批注
  • 查看文件后,将其标记为 已查看 以折叠并跟踪进度。
  • 拉取请求标头中的 进度栏 显示已查看的文件数。
  • 完成后,你可以批准拉取请求或请求更改,通过提交包含总结评论的审核。

了解拉取请求的用途

清楚地了解拉取请求背后的动机有助于指导你的评审,使其能够更加针对性和有意义,并提供与拉取请求作者意图和项目目标相符的反馈。

有几种选项可供你更好地了解建议的更改的上下文和理由。

使用拉取请求边栏获取上下文

在拉取请求边栏中,可以找到有价值的上下文,包括:

  • 链接 问题讨论:查看这些内容以了解合并请求旨在解决的问题或目标,或收集有关背景、设计决策或当前争论的信息。
  • 关联的项目里程碑:查看此拉取请求如何融入大型项目或未来发布的版本。

使用此信息来制定评审框架,并检查拉取请求的目标是否与原始意向保持一致。

开始审查

  1. 在仓库名称下,单击 “Pull requests”****。

    存储库的主页的屏幕截图。 在水平导航栏中,标记为“拉取请求”的选项卡以深橙色标出。

  2. 在拉取请求列表中,单击要审查的拉取请求。

  3. 在拉取请求上,单击“ Files changed”****。

    拉取请求的选项卡的屏幕截图。 “已更改的文件”选项卡以深橙色突出显示。
    可以通过单击 并选择统一视图或拆分视图来更改此选项卡中差异视图的格式。 当你查看其他拉取请求的差异时,你所做的选择将适用。

    拉取请求的“已更改的文件”选项卡的屏幕截图。 “差异视图”菜单用深橙色框标出。

    您也可以选择隐藏空白差异。 您所做的选择仅适用于此拉取请求,并在您下次访问此页面时被记住。

  4. (可选)筛选文件以仅显示要查看的文件或使用文件树导航到特定文件。 有关详细信息,请参阅“过滤拉取请求中的文件”。

  5. 将鼠标悬停在要添加评论的代码行上方,然后单击蓝色的评论图标。

    拉取请求中差异的屏幕截图。 在行号旁边,蓝色加号图标以橙色边框突出显示。

  6. 或者,可以在多行中添加批注。 若要选择一系列行,请单击要批注的第一行的行号,然后向下拖动到最后一行,或按住 Shift 并单击最后一行号。 然后,可以单击要批注的最后一行上的蓝色批注图标。 或者,可以单击要对其添加注释的第一行旁边的蓝色批注图标,然后向下拖动到要对其添加批注的最后一行。

  7. 在评论字段中输入您的评论。

  8. (可选)要提供有关对一行或多行进行特定更改的建议,请单击“”,然后对建议块中的文本进行编辑。

    审核备注框屏幕截图。 用于建议特定更改的文件差异图标以深橙色轮廓显示。

  9. 若要直接对文件进行注释,请单击文件右侧的 ,然后键入注释。

    拉取请求的“文件已更改”页上的映像文件的屏幕截图。 在文件的右侧,以橙色框出了“注释”图标。

  10. 完成后,单击“开始审查”。 如果已开始审查,可以单击“添加审查注释”。

在你提交审查之前,你的行注释处于“待处理”状态,并且仅对你可见。 您可以在提交审查之前随时编辑待处理的注释。 若要取消挂起的审查(包括其所有挂起的注释),请单击已更改的代码上方的“审查更改”,然后单击“放弃审查”

          ![供审查的注释字段的屏幕截图。 “放弃审阅”按钮以深橙色边框显示。](/assets/images/help/pull_requests/abandon-review-button.png)

查看依赖项更改

如果拉取请求包含对依赖项的更改,您可以使用清单或锁定文件的依赖项审阅来查看更改的内容,并检查更改是否引入安全漏洞。 有关详细信息,请参阅“审核拉取请求中的依赖项变更”。

  1. 在拉取请求上,单击“ Files changed”****。

    拉取请求的选项卡的屏幕截图。 “已更改的文件”选项卡以深橙色突出显示。

  2. 在清单或锁定文件的标头右侧,单击 详细差异按钮,以显示依赖项评审。

    拉取请求的“已更改的文件”选项卡的屏幕截图。 用于显示多差异的按钮(标有文件图标)以深橙色突出显示。

  3. 您可能还想查看源差异,因为清单或锁定文件可能会发生变化,但不会更改依赖项,也可能存在 GitHub 无法解析的依赖项,因此,这些依赖项不会显示在依赖项审核中。

    要返回到源差异视图,请单击“”按钮。****

    拉取请求的“已更改的文件”选项卡的屏幕截图。 以橙色框出了用于显示源差异的按钮(显示有代码图标)。

将文件标记为已查看

在完成审查文件后,你可以将文件标记为已查看,该文件将会收起。 如果查看过的文件有更改,将会取消已查看的标记。

  1. 在拉取请求上,单击“ Files changed”****。

    拉取请求的选项卡的屏幕截图。 “已更改的文件”选项卡以深橙色突出显示。

  2. 在已完成审查的文件的标头右侧,选择“已查看”。

    文件标头的屏幕截图。 “已审查”选项用深橙色框标出。

提交评论

在您查看完拉取请求中您想要查看的所有文件后,提交您的审查。

  1. 在拉取请求上,单击“ Files changed”****。

    拉取请求的选项卡的屏幕截图。 “已更改的文件”选项卡以深橙色突出显示。

  2. 在更改的代码上方,单击“审阅更改”。

    拉取请求的“已更改的文件”选项卡的屏幕截图。 “审查更改”按钮用深橙色框标出。

  3. 输入评论,概述您对拟议更改的反馈。

  4. 选择您想要留下的审查类型:

    • 选择“注释”以留下一般反馈,而无需明确批准或请求其他更改。
    • 选择批准以提交您的反馈并批准合并在拉取请求中提议的更改。
    • 选择“请求更改x”**** 以提交必须解决的反馈,然后才能合并拉取请求。
  5. 单击“提交审查”。

提示

  • 请求更改”选项纯粹是信息性的,除非规则集或经典分支保护规则配置了“要求拉取请求”选项,否则不会阻止合并。 如果配置了该选项,并且具有对存储库的 adminownerwrite 访问权限的协作者提交请求更改的审查,则在同一协作者提交另一次要求批准拉取请求中更改的审查之前,拉取请求不能合并。
  • 即使没有获得批准审查,或者请求更改的审查者离开了组织或者联系不上,仓库所有者和管理员也可合并拉取请求。
  • 如果同时启用了必需审查和过期审查,并且代码修改提交已推送到批准的拉取请求分支,则批准将予驳回。 拉取请求必须经过再次审查和批准才可合并。
  • 当多个打开的拉取请求时分别有指向同一提交的头部分支时,如果一个或两者有待定或被拒绝的审查,你将无法合并它们。
  • 如果仓库需要具有写入或管理员权限的人员的批准审查,审阅者边栏会按权限级别对审批进行分组。 审批可能显示在两个部分中: * ‌顶部部分主要包含来自具有写入或管理员权限的人员的审批,这些审批计入合并要求。 即使 GitHub Copilot 评审不计入合并要求,GitHub Copilot 的审批也会显示在本部分中。
    • 可折叠部分(如果存在)**** 显示审阅者的审批,对于是否可以合并拉取请求而言,这些审阅者的评审并无影响。
  • 拉取请求作者无法批准自己的拉取请求。

其他阅读材料