如何更改已关闭/合并的拉取请求的基本分支?

时间:2019-04-22 19:31:18

标签: git github

我创建了一个存储库,进行了一些更改,将其提交并发送了请求请求。 PR被接受,更改被合并到上游存储库中。但是,后来我意识到我犯了一个错误,那就是从fork的master分支中发布PR,而不是创建一个单独的分支来进行所有更改并从那里提交PR。

我想知道是否有任何方法可以更改已关闭/合并的PR的基础分支?

假设这不可能,删除分叉是否明智?但是,我非常担心它将删除所有有价值的讨论以及对现有PR的评论。

感谢您能提供的任何帮助。

编辑1:由于作者进一步解决了删除fork的可能后果,因此我将@ bk2204响应标记为可接受的答案。虽然,@ msanford的答案也非常有帮助,但我希望我能在两个答案中打勾。干杯!

2 个答案:

答案 0 :(得分:1)

注意到并想为此做点事对您有好处。

但是,负责上游项目的人员对该公关进行了审查和合并。这意味着他们接受了您的更改,因此无需担心,您无所事事。

要深入研究您关心的问题,分支只是将一系列提交链接在一起的有用抽象。与从自己的master发送PR而不是从master分支出来的补丁分支这一事实无关紧要。 假设,您打算基于master建立补丁分支,一个补丁分支,而您的母版最终将是同一事物,因为它们包含相同的历史记录

如果您的补丁程序进入上游仓库中的功能分支,其中不包含来自master的工作(无论出于何种原因),那么额外的更改将显示在您的PR中同样,您和上游审核者也会注意到。

出于完整性考虑:如果您确实需要修复错误包含的工作,则可能会在新的请求请求中进行一系列还原提交。

答案 1 :(得分:1)

首先,听起来您正在谈论要更改与拉取请求关联的分支,而不是基础分支(将其合并到的分支)。无论哪种方式,都无法更改合并的拉取请求的分支。拉取请求被视为完成,因此无法更改。

在这种情况下,由于使用了错误的分支,因此不必删除fork。现在,关闭拉取请求后,您可以根据需要修改master分支;历史记录存储在主存储库和GitHub端,并且对master分支的进一步更改将不会对请求请求产生影响。

但是,如果出于其他原因要删除master分支或分支,则可以这样做,而不会对上游项目或请求请求产生负面影响。