跳至主要内容

从 fork 创建拉取请求

您可以创建拉取请求,以提出您对上游存储库 fork 所做的更改。

谁可以使用此功能?

任何对存储库具有写入权限的人都可以从用户拥有的 fork 创建拉取请求。

如果您的拉取请求将您的主题分支与上游存储库中的分支作为基分支进行比较,那么您的主题分支也称为拉取请求的“比较分支”。

例如

  • 您的主题分支(也称为“功能分支”)是您在 fork 的存储库中进行更改的分支(例如 my-topic-branch)。
  • 基分支是您要将更改合并到的上游(中心)存储库中的分支(例如 main)。
  • 拉取请求将主题分支(my-topic-branch)提出的更改与基分支(main)进行比较,因此 my-topic-branch 被称为“比较分支”。

有关拉取请求分支的更多信息(包括示例),请参阅“创建拉取请求”。

注意:要在公共存储库中打开拉取请求,您必须对头部或源分支具有写入权限,或者对于组织拥有的存储库,您必须是拥有该存储库的组织的成员才能打开拉取请求。

  1. 导航到您创建 fork 的原始存储库。

  2. 在文件列表上方,在黄色横幅中,单击比较和拉取请求以创建与相关分支关联的拉取请求。

    Screenshot of the banner above the list of files.

  3. 在创建新拉取请求的页面上,单击跨 fork 比较

    Screenshot of the page to open a pull request. The "compare across forks" link is outlined in dark orange.

  4. 在“基分支”下拉菜单中,选择您要将更改合并到的上游存储库的分支。

    Screenshot of the page to open a new pull request. The dropdown menus for choosing the base repository and branch are outlined in dark orange.

  5. 在“头部 fork”下拉菜单中,选择您的 fork,然后使用“比较分支”下拉菜单选择您进行更改的分支。

    Screenshot of the page to open a new pull request. The dropdown menus for choosing the head repository and compare branch are outlined in dark orange.

  6. 为您的拉取请求键入标题和描述。

  7. 在用户拥有的 fork 上,如果您希望允许任何对上游存储库具有推送权限的人对您的拉取请求进行更改,请选择允许维护人员编辑

    警告:如果您的 fork 包含 GitHub Actions 工作流,则选项为允许维护人员编辑和访问机密。允许对包含 GitHub Actions 工作流的 fork 的分支进行编辑,也允许维护人员编辑 fork 的存储库的工作流,这可能会泄露机密的价值并授予对其他分支的访问权限。

  8. 要创建一个准备审查的拉取请求,请单击创建拉取请求。要创建草稿拉取请求,请使用下拉菜单并选择创建草稿拉取请求,然后单击草稿拉取请求。有关草稿拉取请求的更多信息,请参阅“关于拉取请求”。

提示:创建拉取请求后,您可以请求特定人员审查您提出的更改。有关更多信息,请参阅“请求拉取请求审查”。

进一步阅读