关于拉取请求合并
在建议的更改准备就绪且满足任何存储库要求时合并拉取请求。 无法合并草稿拉取请求。
存储库规则或分支保护可能要求在合并前进行评审、状态检查,或使用最新分支。 请参阅“关于受保护分支”。
作为分支保护规则的替代方法,可以创建规则集。 规则集在分支保护规则(例如状态)和更好的可发现性(无需管理员访问权限)上具有一些优势。 还可以同时应用多个规则集。 有关详细信息,请参阅“关于规则集”。
您可以配置拉取请求在满足所有合并要求时自动合并。 有关详细信息,请参阅“自动合并拉取请求”。
如果基分支需要合并队列,可用的合并选项与此处所述的选项不同。 请参阅“将拉取请求与合并队列合并”。
如果拉取请求存在合并冲突,或者要首先测试更改, 请在本地查看拉取请求。
合并后,存储库可能会自动删除头分支。 请参阅“管理分支的自动删除”。
注意
如果您在拉取请求合并后删除头部分支,GitHub 会检查将已删除分支指定为基础分支的同一仓库中的任何开放拉取请求。 GitHub 将自动更新任何此类拉取请求,将其基础分支更改为合并的拉取请求的基础分支。
拉取请求使用--no-ff选项,但使用快速向前合并的已压缩或重新定基拉取请求除外。
可以将拉取请求链接到问题,以显示修复正在进行,并在合并拉取请求时自动关闭问题。 有关详细信息,请参阅“将拉取请求链接到议题”。
如果不想合并更改,可以 关闭拉取请求。
合并拉取请求
-
在仓库名称下,单击 “Pull requests”****。

-
在“拉取请求”列表中,单击要合并的拉取请求。
-
向下滚动到拉取请求底部。 根据为存储库启用的合并选项,选择合并方法:
-
通过单击 “合并拉取请求”,将所有提交合并到基础分支。 如果未显示此选项,请单击合并下拉菜单,然后选择“ 创建合并提交”。

-
通过点击合并下拉菜单,选择 Squash and merge,然后点击 Squash and merge,将提交压缩为一个提交。
注意
变基并合并始终会更新提交者信息,并创建新的提交 SHA。 请参阅 “关于拉取请求合并”。
-
-
如有提示,输入提交消息,或接受默认消息。
有关 squash 合并的默认提交消息的信息,请参阅 合并拉取请求。
注意
电子邮件选择器不适用于变基合并,因为变基合并不会创建合并提交或者,对于压缩合并,会将创建拉取请求的用户记为压缩后提交的作者。
-
单击“确认合并”、“确认压缩并合并” 或“确认变基并合并”****。
-
(可选)删除分支。 这使得仓库中的分支列表保持整洁。
注意
若要详细了解 GitHub CLI,请参阅“关于 GitHub CLI”。
要合并拉取请求,请使用 gh pr merge 子命令。 将 pull-request 替换为拉取请求的数字、URL 或主分支。
gh pr merge PULL-REQUEST
按照交互式提示完成合并。 请参阅“合并拉取请求”。
或者,您可以使用标志跳过交互式提示。 例如,此命令会将这些提交压缩为一个提交,并将提交消息设为“my squash commit”,将压缩后的提交合并到基础分支中,然后删除本地和远程分支。
gh pr merge 523 --squash --body "my squash commit" --delete-branch
延伸阅读
- 还原拉取请求
- 在 GitHub Desktop 中同步分支使用GitHub Desktop
- 合并拉取请求
- 合并、关闭拉取请求