如何在GitHub上修改拉取请求以更改要合并到的目标分支?


117

我有一个请求请求,请求从我的分支合并到master,但是所有者希望我更改请求以合并到与我的分支不同的分支。

这可能吗?有什么可能的解决方案?

Answers:


137

2016年8月更新:更改“拉取请求”的基本分支最终允许更改该分支。
(这将关闭第18期,该期刊已有3年历史,并具有1500多个评论)

创建拉取请求后,可以修改基础分支,以便将拉取请求中的更改与另一个分支进行比较。

在此处输入图片说明


原始答案:

由于PR不能在分支中进行编辑(请参见下文),因此最简单的方法是:

  • 在当前分支的顶部创建一个本地新分支
  • 推那个新的分支
  • 与正确的目的地进行新的公关。
  • 关闭上一个公关
  • 引用新请求中的“旧”请求请求;例如。Supersedes #123(如下里维拉评论)

(原始答案,仅在创建PR时有效)

您可以尝试选择另一个基础分支,如“ 更改分支范围和目标存储库 ”中所示(单击EditPR页面顶部的按钮)

https://github-images.s3.amazonaws.com/help/pull_requests/pull-request-review-edit-branch.png

考虑分支范围的最简单方法是:

  • 基地分支是你想改变应该被应用,
  • 盖分支是你想什么应用。

更改基础存储库会更改向谁通知拉取请求。
可以推送到基础存储库的每个人都将收到一封电子邮件通知,并在下次登录时在其仪表板中看到新的请求请求。

如果您选择原始维护者(所有者)想要的基础分支,则您的PR应该从您的分支(不变)合并到新的基础分支。


@Moriarty我没有正在进行的PR,但作为PR的创建者,发送PR后您没有看到“编辑”按钮吗?
VonC 2014年

3
我可以,但是那只能让我修改P​​R名称。我假设您不能在提交时直接将PR合并更改为分支。我想知道是否有替代方法(无论如何将PR合并到另一个分支中)。
Moriarty 2014年

2
有一个功能请求可以更改PR的目标分支:github.com/isaacs/github/issues/18
Jason Antman

1
引用来自新请求的“旧”请求请求也是一个好主意(例如,取代#123)。
里维拉2015年

1
@Shimmy我不这么认为,而不是从Web GUI。
VonC

6

如果您的分支可以(仍然)在远程使用,则不必在本地创建新分支。

  • 直接从下拉菜单中或在“#分支”(https://github.com/account/project/branches)下选择分支(包含要提交的更改)。

  • 点击“新请求请求”。这使您可以选择一个新的基础(目标)分支。

这是Github新界面的屏幕截图: 在此处输入图片说明

我可以UX针对任何fork / branch 提交分支的PR ---以前是否提交分支的PR都没关系UX


1
绿色的“新请求请求”按钮已移至右上角的PR列表网页。
Golden Thumb

我不确定“移动”是什么意思,但是,可以的,您都可以在两个地方找到绿色的按钮“ New pull request”。
mkcor

4

您现在可以:https : //github.com/blog/2224-change-the-base-branch-of-a-pull-request

“现在您可以更改打开的拉取请求的基本分支。创建拉取请求后,您可以修改基本分支,以便将拉取请求中的更改与其他分支进行比较。通过更改您最初的拉取请求,而不是使用正确的基础分支来打开新的拉取请求,您将能够保留宝贵的工作和讨论。”


2

您必须按照gibhub doc LINK中所述创建新的拉取请求

  1. 首先选择 New Pull request
  2. 在中compare page,左侧选择target branch要推送的内容,右侧选择branch you already pushed
  3. 更新您的新详细信息PR
  4. 创建 PR

-4

很简单 只需单击要更改其基础分支的PR。在网页底部附近找到“关闭拉取请求”按钮。现在,您可以正常地重新创建新的PR了-确保这次选择正确的基础分支。


我不明白为什么这被否决了。这对我来说完全正常。
威尔特

3
我没有拒绝投票。但是我看到这个答案只会重复现有的较早答案(并且这样做的质量较低)。
Lars Blumberg

@LarsBlumberg如果您仔细阅读,则应该注意,即使可能存在一些重叠,它也不是重复。对我来说,如果(n -1)步而不是n步可以解决问题,那么值得分享:-)
Golden Thumb

2
如果(n-1)个步骤遗漏了一些有用的步骤,例如关闭旧的PR和在新的PR中进行引用,那么我认为从已经存在的答案中重复步骤的子集是没有价值的。尤其是由于缺少正确的格式而难以阅读的步骤较少的列表时。
Lars Blumberg
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.