如果您想为拉取请求创建新分支,并且没有对存储库的写入权限,则可以先分叉存储库。有关更多信息,请参阅“从分叉创建拉取请求”和“关于分叉”。
您可以在创建拉取请求时指定要将更改合并到的分支。拉取请求只能在两个不同的分支之间打开。
注意:要在公共仓库中打开拉取请求,您必须对 head 分支或源分支具有写入权限,或者对于组织拥有的仓库,您必须是拥有该仓库的组织的成员才能打开拉取请求。
您可以将拉取请求链接到问题,以表明修复正在进行中,并在有人合并拉取请求时自动关闭问题。有关更多信息,请参阅“将拉取请求链接到问题”。
更改分支范围和目标仓库
默认情况下,拉取请求基于父仓库的默认分支。有关更多信息,请参阅“关于分支”。
如果默认父仓库不正确,您可以使用下拉列表更改父仓库和分支。您也可以使用下拉列表交换您的 head 分支和 base 分支,以建立参考点之间的差异。这里的引用必须是您 GitHub 仓库中的分支名称。
在考虑分支时,请记住,base 分支是更改应应用到的位置,head 分支包含您希望应用的内容。
当您更改 base 仓库时,您也会更改拉取请求的通知。所有可以向 base 仓库推送的人员都会收到电子邮件通知,并在下次登录时在他们的仪表板上看到新的拉取请求。
当您更改分支范围中的任何信息时,提交和更改的文件预览区域将更新以显示您的新范围。
提示:
- 使用比较视图,您可以设置跨任何时间范围的比较。有关更多信息,请参阅“比较提交”。
- 项目维护者可以为仓库添加拉取请求模板。模板包括拉取请求正文中信息的提示。有关更多信息,请参阅“关于问题和拉取请求模板”。
创建拉取请求
-
在 GitHub.com 上,导航到仓库的主页。
-
在“分支”菜单中,选择包含您提交的分支。
-
在文件列表上方,黄色横幅中,点击 **比较并发起拉取请求** 为关联分支创建拉取请求。
-
使用 *基础* 分支下拉菜单选择您要将更改合并到的分支,然后使用 *比较* 分支下拉菜单选择您进行更改的主题分支。
-
为您的拉取请求输入标题和描述。
-
要创建一个准备好的拉取请求,请点击 **创建拉取请求**。要创建草稿拉取请求,请使用下拉菜单并选择 **创建草稿拉取请求**,然后点击 **草稿拉取请求**。有关草稿拉取请求的更多信息,请参阅“关于拉取请求”。
拉取请求经过审查后,可以 合并到仓库中。
要了解有关 GitHub CLI 的更多信息,请参阅“关于 GitHub CLI”。
要创建拉取请求,请使用 gh pr create
子命令。
gh pr create
要将拉取请求分配给个人,请使用 --assignee
或 -a
标志。您可以使用 @me
将拉取请求分配给自己。
gh pr create --assignee "@octocat"
要指定要将拉取请求合并到的分支,请使用 --base
或 -B
标志。要指定包含拉取请求提交的分支,请使用 --head
或 -H
标志。
gh pr create --base my-base-branch --head my-changed-branch
要为新的拉取请求添加标题和正文,请使用 `--title` 和 `--body` 标志。
gh pr create --title "The bug is fixed" --body "Everything works again"
要将拉取请求标记为草稿,请使用 `--draft` 标志。
gh pr create --draft
要为新的拉取请求添加标签或里程碑,请使用 `--label` 和 `--milestone` 标志。
gh pr create --label "bug,help wanted" --milestone octocat-milestone
要将新的拉取请求添加到特定项目,请使用 `--project` 标志。
gh pr create --project octocat-project
要指定个人或团队作为审阅者,请使用 `--reviewer` 标志。
gh pr create --reviewer monalisa,hubot --reviewer myorg/team-name
要在默认的网络浏览器中创建拉取请求,请使用 `--web` 标志。
gh pr create --web
-
点击 **预览拉取请求**。GitHub Desktop 将打开一个预览对话框,显示当前分支与基分支之间更改的差异。
或者,要直接转到 GitHub 创建拉取请求,请选择下拉图标并点击 **创建拉取请求**。
-
确认 **base:** 下拉菜单中的分支是您要将更改合并到的分支。
GitHub Desktop 将提示您当前分支是否可以自动合并到基分支。
-
点击 **创建拉取请求**。GitHub Desktop 将打开您的默认浏览器,带您前往 GitHub。
-
为您的拉取请求输入标题和描述。
-
要创建一个准备好的拉取请求,请点击 **创建拉取请求**。要创建草稿拉取请求,请使用下拉菜单并选择 **创建草稿拉取请求**,然后点击 **草稿拉取请求**。有关草稿拉取请求的更多信息,请参阅“关于拉取请求”。
- 将更改提交到本地存储库副本后,点击 **创建拉取请求** 图标。
- 检查您要从中合并的本地分支和存储库,以及您要合并到的远程分支和存储库是否正确。然后为拉取请求添加标题和描述。
- 点击 **创建**。
有关在 GitHub Codespaces 中创建拉取请求的更多信息,请参阅 "使用 GitHub Codespaces 进行拉取请求"。