{"meta":{"title":"创建拉取请求","intro":"创建拉取请求以建议对存储库中的代码进行更改。","product":"拉取请求","breadcrumbs":[{"href":"/zh/pull-requests","title":"拉取请求"},{"href":"/zh/pull-requests/how-tos","title":"How-tos"},{"href":"/zh/pull-requests/how-tos/create-pull-requests","title":"创建拉取请求"},{"href":"/zh/pull-requests/how-tos/create-pull-requests/creating-a-pull-request","title":"创建拉取请求"}],"documentType":"article"},"body":"# 创建拉取请求\n\n创建拉取请求以建议对存储库中的代码进行更改。\n\n如果想要为拉取请求创建新分支，但对存储库没有写入权限，可以先分叉存储库。 请参阅 [从复刻创建拉取请求](/zh/pull-requests/how-tos/create-pull-requests/creating-a-pull-request-from-a-fork) 和 [叉子](/zh/pull-requests/reference/forks)。\n\n创建拉取请求时，可以指定要将更改合并到哪个分支。 拉取请求只能在不同的两个分支之间打开。\n\n> \\[!NOTE]\n> 要在公共存储库中打开拉取请求，你必须具有对头分支或源分支写入权限；对于组织拥有的仓库，你必须是拥有该存储库的组织的成员才能打开拉取请求。\n\n可以将拉取请求链接到问题，以显示修复正在进行，并在合并拉取请求时自动关闭问题。 有关详细信息，请参阅“[将拉取请求链接到议题](/zh/issues/tracking-your-work-with-issues/using-issues/linking-a-pull-request-to-an-issue)”。\n\n## 创建拉取请求\n\n<div class=\"ghd-tool webui\">\n\n1. 在 GitHub 上，导航到存储库的主页面。\n\n2. 在“Branch（分支）”菜单中，选择包含提交的分支。\n\n   ![存储库主页上分支下拉菜单的屏幕截图。](/assets/images/help/pull_requests/branch-dropdown.png)\n\n3. 在文件列表上方的黄色横幅中，单击“比较和拉取请求”\\*\\*\\*\\*，为关联的分支创建拉取请求。\n\n   ![文件列表上方横幅的屏幕截图。](/assets/images/help/pull_requests/pull-request-compare-pull-request.png)\n\n4. 使用 *基* 分支下拉菜单选择要合并更改的分支。 然后，使用 *compare* 分支下拉菜单选择你进行更改的主题分支。\n\n5. 为您的拉取请求输标题和说明。\n\n6. 要创建可供审查的拉取请求，请单击“创建拉取请求”。\n   若要创建草稿拉取请求，请使用下拉列表并选择“创建草稿拉取请求”，然后单击“草稿拉取请求” 。 如果你是组织的成员，则可能需要从组织所有者请求对草稿拉取请求的访问权限。 请参阅“[拉取请求](/zh/pull-requests/reference/pull-requests#draft-pull-requests)”。\n\n> \\[!TIP]\n> 创建拉取请求后，可以要求特定人员查看建议的更改。 请参阅“[请求拉取请求审查](/zh/pull-requests/how-tos/create-pull-requests/requesting-a-pull-request-review)”。\n\n审查拉取请求后，可以将其合并到存储库中。 请参阅“[合并拉取请求](/zh/pull-requests/how-tos/merge-and-close-pull-requests/merging-a-pull-request)”。\n\n</div>\n\n<div class=\"ghd-tool cli\">\n\n> \\[!NOTE]\n> 若要详细了解 GitHub CLI，请参阅“[关于 GitHub CLI](/zh/github-cli/github-cli/about-github-cli)”。\n\n若要创建拉取请求，请使用 `gh pr create` 子命令。\n\n```shell\ngh pr create\n```\n\n若要将拉取请求分配给个人，请使用 `--assignee` 或 `-a` 标志。 可以使用 `@me` 自行分配拉取请求。\n\n```shell\ngh pr create --assignee \"@octocat\"\n```\n\n若要指定要将拉取请求合并到的分支，请使用 `--base` 或 `-B` 标志。 若要指定包含你的拉取请求提交的分支，请使用 `--head` 或 `-H` 标志。\n\n```shell\ngh pr create --base my-base-branch --head my-changed-branch\n```\n\n若要包含新拉取请求的标题和正文，请使用 `--title` 和 `--body` 标志。\n\n```shell\ngh pr create --title \"The bug is fixed\" --body \"Everything works again\"\n```\n\n若要将拉取请求标记为草稿，请使用 `--draft` 标志。\n\n```shell\ngh pr create --draft\n```\n\n若要向新的拉取请求添加标签或里程碑，请使用 `--label` 和 `--milestone` 标志。\n\n```shell\ngh pr create --label \"bug,help wanted\" --milestone octocat-milestone\n```\n\n若要将新的拉取请求添加到特定项目，请使用 `--project` 标志。\n\n```shell\ngh pr create --project octocat-project\n```\n\n若要将个人或团队指定为审阅者，请使用 `--reviewer` 标志。\n\n```shell\ngh pr create --reviewer monalisa,hubot --reviewer myorg/team-name\n```\n\n若要在默认 Web 浏览器中创建拉取请求，请使用 `--web` 标志。\n\n```shell\ngh pr create --web\n```\n\n</div>\n\n<div class=\"ghd-tool desktop\">\n\n1. 单击**预览拉取请求**。\n   GitHub Desktop 打开一个预览对话框，显示当前分支和基分支之间的更改差异。\n\n   或者，若要直接转到 GitHub 创建拉取请求，请选择下拉列表图标并单击“ **创建拉取请求**”。\n\n2. 确认“**base:**”下拉菜单中的分支是要合并更改的分支。\n\n   ![“打开拉取请求”对话框窗口的屏幕截图。 带有下拉图标（标有“基础: 开发”）的按钮以橙色框出。](/assets/images/help/desktop/base-branch-selection.png)\n\nGitHub Desktop 指示当前分支是否可以自动合并到基分支中。\n\n![“打开拉取请求”对话框窗口的屏幕截图。 显示“无法自动合并”的状态标签以橙色边框突出显示。](/assets/images/help/desktop/preview-dialog-merge-status.png)\n\n1. 单击**Create Pull Request**。\n   GitHub Desktop 会打开你的默认浏览器并带你前往 GitHub。\n2. 为您的拉取请求输标题和说明。\n3. 要创建可供审查的拉取请求，请单击“创建拉取请求”。\n   若要创建草稿拉取请求，请使用下拉列表并选择“创建草稿拉取请求”，然后单击“草稿拉取请求” 。 如果你是组织的成员，则可能需要从组织所有者请求对草稿拉取请求的访问权限。 请参阅“[拉取请求](/zh/pull-requests/reference/pull-requests#draft-pull-requests)”。\n\n</div>\n\n<div class=\"ghd-tool codespaces\">\n\n1. 将更改提交到存储库的本地副本后，单击“ **创建拉取请求** ”图标。\n\n![“源代码管理”边栏顶部的屏幕截图。 拉取请求图标以深橙色边框突出显示。](/assets/images/help/codespaces/codespaces-commit-pr-button.png)\n\n1. 检查作为合并来源的本地分支和仓库以及作为合并目标的远程分支和仓库是否正确。 然后，为拉取请求提供标题和说明。\n\n![“GitHub 拉取请求”边栏的屏幕截图，其中包含用于创建拉取请求的表单，包括“标题”和“说明”字段。](/assets/images/help/codespaces/codespaces-commit-pr.png)\n\n1. 单击 **“创建”** 。\n\n有关在 GitHub Codespaces 中创建拉取请求的详细信息，请参阅 [将 GitHub Codespaces 用于拉取请求](/zh/codespaces/developing-in-a-codespace/using-github-codespaces-for-pull-requests)。\n\n</div>\n\n## 对拉取请求中的文件进行更改\n\n打开拉取请求后，可以通过向头分支添加新提交来继续更改文件。\n\n<div class=\"ghd-tool webui\">\n\n您还可以在 GitHub 网站上修改文件。\n\n1. 在 GitHub 上，转到存储库中的拉取请求。\n2. 在拉取请求上，单击“<svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-file-diff\" aria-label=\"file-diff\" role=\"img\"><path d=\"M1 1.75C1 .784 1.784 0 2.75 0h7.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0 1 13.25 16H2.75A1.75 1.75 0 0 1 1 14.25Zm1.75-.25a.25.25 0 0 0-.25.25v12.5c0 .138.112.25.25.25h10.5a.25.25 0 0 0 .25-.25V4.664a.25.25 0 0 0-.073-.177l-2.914-2.914a.25.25 0 0 0-.177-.073ZM8 3.25a.75.75 0 0 1 .75.75v1.5h1.5a.75.75 0 0 1 0 1.5h-1.5v1.5a.75.75 0 0 1-1.5 0V7h-1.5a.75.75 0 0 1 0-1.5h1.5V4A.75.75 0 0 1 8 3.25Zm-3 8a.75.75 0 0 1 .75-.75h4.5a.75.75 0 0 1 0 1.5h-4.5a.75.75 0 0 1-.75-.75Z\"></path></svg> Files changed”\\*\\*\\*\\*。\n\n   ![拉取请求的选项卡的屏幕截图。 “已更改的文件”选项卡以深橙色突出显示。](/assets/images/help/pull_requests/pull-request-tabs-changed-files.png)\n3. 向下滚动到要更改的文件。\n   * 如果拉取请求包含大量文件，可以使用筛选器来找到文件。\n4. 在要更改的文件上方，单击 <svg version=\"1.1\" width=\"16\" height=\"16\" viewBox=\"0 0 16 16\" class=\"octicon octicon-kebab-horizontal\" aria-label=\"Show options\" role=\"img\"><path d=\"M8 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3ZM1.5 9a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Zm13 0a1.5 1.5 0 1 0 0-3 1.5 1.5 0 0 0 0 3Z\"></path></svg>。\n\n![该屏幕截图显示了“文件已更改”选项卡上的文件上方的选项。“显示选项”按钮以橙色矩形突出显示。](/assets/images/help/pull_requests/menu-on-pull-request-file.png)\n\n1. 在菜单上，单击“编辑文件”\\*\\*\\*\\*。\n2. 在编辑器中进行更改。 提交更改时，选择直接提交回当前头部分支。\n\n</div>\n\n## 延伸阅读\n\n* [从复刻创建拉取请求](/zh/pull-requests/how-tos/create-pull-requests/creating-a-pull-request-from-a-fork)\n* [使拉取请求与基础分支保持同步](/zh/pull-requests/how-tos/create-pull-requests/keeping-your-pull-request-in-sync-with-the-base-branch)\n* [更改拉取请求的基本分支](/zh/pull-requests/how-tos/create-pull-requests/changing-the-base-branch-of-a-pull-request)\n* [创建议题](/zh/issues/tracking-your-work-with-issues/using-issues/creating-an-issue)\n* [向其他GitHub用户分配问题和拉取请求](/zh/issues/tracking-your-work-with-issues/using-issues/assigning-issues-and-pull-requests-to-other-github-users)\n* [在 GitHub 上写入](/zh/get-started/writing-on-github)"}