关于拉取请求
拉取请求是将一组更改从一个分支合并到另一个分支的提议。在拉取请求中,协作者可以在将更改集成到主代码库之前审查和讨论提议的更改集。拉取请求显示源分支和目标分支中内容之间的差异或差异。
注意:在使用拉取请求时,请牢记以下几点
- 如果您在共享存储库模型中工作,建议您为拉取请求使用主题分支。虽然您可以从任何分支或提交发送拉取请求,但使用主题分支,您可以在需要更新提议的更改时推送后续提交。
- 在强制推送提交到拉取请求时要非常小心。强制推送会更改存储库历史记录,并可能破坏您的拉取请求。如果其他协作者在强制推送之前分支项目,则强制推送可能会覆盖协作者在其工作基础上的提交。
您可以在 GitHub.com、GitHub Desktop、GitHub Codespaces、GitHub Mobile 和使用 GitHub CLI 时创建拉取请求。
初始化拉取请求后,您将看到一个审查页面,该页面显示您的分支(比较分支)和存储库的基本分支之间的更改的概述。您可以添加提议更改的摘要,审查提交所做的更改,添加标签、里程碑和分配者,以及@提及个人贡献者或团队。有关更多信息,请参阅“创建拉取请求”。
创建拉取请求后,您可以将主题分支中的提交推送到现有拉取请求中。这些提交将按时间顺序显示在您的拉取请求中,更改将在“已更改的文件”选项卡中显示。
其他贡献者可以审查您提出的更改,添加审查评论,参与拉取请求讨论,甚至向拉取请求添加提交。默认情况下,在公共存储库中,任何用户都可以提交审查,以批准或请求更改拉取请求。组织所有者和存储库管理员可以限制谁能够给出批准拉取请求审查或请求更改。有关更多信息,请参阅“在您的组织中管理拉取请求审查”和“在您的存储库中管理拉取请求审查”。
您可以在“对话”选项卡中查看有关分支当前部署状态和过去部署活动的的信息。有关更多信息,请参阅“查看存储库的部署活动”。
对提出的更改感到满意后,您可以合并拉取请求。如果您在共享存储库模型中工作,则您创建拉取请求,您或其他人将从您的功能分支将您的更改合并到您在拉取请求中指定的基分支中。有关更多信息,请参阅“合并拉取请求”。
如果仓库需要状态检查,则必须通过所需的状态检查,才能将您的分支合并到受保护的分支中。有关更多信息,请参阅“关于受保护的分支”。
您可以将拉取请求链接到问题,以表明修复正在进行中,并在有人合并拉取请求时自动关闭问题。有关更多信息,请参阅“将拉取请求链接到问题”。
提示
您可以访问您的仪表板,以快速找到您正在处理或订阅的最近更新的拉取请求的链接。有关更多信息,请参阅“关于您的个人仪表板”。
草稿拉取请求
草稿拉取请求在具有 GitHub Free for Organizations 和传统按仓库计费计划的公共仓库中可用,以及在具有 GitHub Team、GitHub Enterprise Server 和 GitHub Enterprise Cloud 的公共和私有仓库中可用。有关更多信息,请参阅“GitHub 的计划”。
创建拉取请求时,您可以选择创建准备审查的拉取请求或草稿拉取请求。草稿拉取请求不能合并,并且不会自动请求代码所有者审查草稿拉取请求。有关创建草稿拉取请求的更多信息,请参阅“创建拉取请求”和“从分支创建拉取请求”。
当您准备好获取拉取请求的反馈时,您可以将您的草稿拉取请求标记为已准备好审查。将拉取请求标记为已准备好审查将要求任何代码所有者进行审查。您可以随时将拉取请求转换为草稿。有关更多信息,请参阅“更改拉取请求的阶段”。
比较和拉取请求页面上的提交差异
比较页面和拉取请求页面使用不同的方法来计算更改文件的差异
- 比较页面显示头引用尖端与头引用和基引用当前共同祖先(即合并基)之间的差异。
- 拉取请求页面显示头引用尖端与创建拉取请求时头引用和基引用的共同祖先之间的差异。因此,用于比较的合并基可能不同。
进一步阅读
- GitHub 词汇表中的“GitHub 词汇表”
- “关于分支”
- “评论拉取请求”
- “关闭拉取请求”