关于拉取请求合并
在拉取请求中,您提议将您对头部分支所做的更改合并到基础分支。 默认情况下,任何拉取请求都可随时合并,除非头部分支与基本分支冲突。 但是,对于何时可以将拉取请求合并到特定分支可能会有限制。 例如,如果必需状态检查通过,您可能只能将拉取请求合并到默认分支。 更多信息请参阅“关于受保护分支”。
如果拉取请求具有合并冲突,或者您在测试前想测试更改,可以本地检出拉取请求,然后使用命令行合并。
无法合并草稿拉取请求。 有关拉取请求草稿的更多信息,请参阅“关于拉取请求”。
您可让头部分支在仓库中的拉取请求合并后自动删除。 更多信息请参阅"管理分支的自动删除."。
如果决定不想让主题分支中的更改合并到上游分支,您可以关闭拉取请求而不合并。
在 GitHub 上合并拉取请求
-
在仓库名称下,单击 Pull requests(拉取请求)。
-
在“Pull Requests(拉取请求)”列表中,单击要合并的拉取请求。
-
根据对仓库启用的合并选项,您可以:
- 单击 Merge pull request(合并拉取请求),将所有提交合并到基本分支。 如果 Merge pull request(合并拉取请求)选项未显示,则单击合并下拉菜单,然后选择 Create a merge commit(创建合并提交)。
- 单击合并下拉菜单,选择 Squash and merge(压缩并合并),然后单击 Squash and merge(压缩并合并)按钮,将提交压缩到一个提交。
- 单击合并下拉菜单,选择 Rebase and merge(变基并合并),然后单击 Rebase and merge(变基并合并)按钮,将提交个别变基到基本分支。
注:变基并合并始终会更新提交者信息,并创建新的提交 SHA。 更多信息请参阅“关于拉取请求合并”。
-
如有提示,输入提交消息,或接受默认消息。
有关压缩合并的默认提交消息的信息,请参阅“关于拉取请求合并”。
Note: The email selector is not available for rebase merges, which do not create a merge commit, or for squash merges, which credit the user who created the pull request as the author of the squashed commit.
- 单击 Confirm merge(确认合并)、Confirm squash and merge(确认压缩并合并)或 Confirm rebase and merge(确认变基并合并)。
- (可选)删除分支。 这有助于仓库的分支列表保持整洁。
仓库可配置为在您合并拉请求时自动删除拉取请求的头部分支。 更多信息请参阅“管理分支的自动删除”。
拉取请求使用 --no-ff
选项合并,具有压缩或变基的提交的拉取请求除外,这种拉取请求使用快进选项合并。
You can link a pull request to an issue to automatically close the issue when someone merges the pull request. 更多信息请参阅“将拉取请求链接到议题”。