将一个分支合并到master和另一个分支的最佳方法是什么?

时间:2019-10-03 21:18:14

标签: git github

上下文

我基于new-feature创建了一个分支(我们称其为master)。我计划创建一个拉取请求,该请求将在未来几个月内保持打开状态。

这一次,我将通过分支new-feature进行功能开发。分支机构经过审核并获得批准后,我将创建一个提取请求,以将该工作合并到new-feature

说完一切,new-feature将合并到master中。

我的问题

假设我的new-feature子分支之一(我们称其为child-branch-1)包含的更改是 也需要在{{ 1}}是否合并到master中?

我可以使用一个分支进行此更改,创建两个单独的拉取请求(一个PR分别将更改合并到new-feature中,另一个PR将该更改合并到master中) ,还是最好使用2个不同的分支(1个基于master,1个基于new-feature,每个分支都有PR)来完成此任务?

2 个答案:

答案 0 :(得分:2)

  

假设我的一个新功能子分支(我们称其为child-branch-1)包含的更改也需要合并到master中,然后再将new-feature合并到{{1 }}?

该分支master包含child-branch-1的历史(部分)。

您不能按原样合并new-feature到母版,因为它包含太多。

  • child-branch-1创建一个新分支(上游是您创建的原始存储库的远程目录)
  • upstream/master到新分支的
  • git cherry-pick one or several commits
  • 从新分支中创建一个单独的PR,该分支同样仅包含与您的“紧急”更改相关的提交。

答案 1 :(得分:0)

我首先将child-branch-1合并为master。完成此操作后,我便会从masternew-feature进行拉动,这样您将在new-feature中拥有所需的更改,并且该分支的子代也将具有更改

由于在将child-branch-1放入new-feature之前需要拥有child-branch-1的权限,所以我认为最好从master那里获得new-feature而不是从child-branch-1那里获取。

我说的是这种简单的一般情况,但是您的个人情况可能会更复杂。您可能需要new-feature中的一些东西才能掌握,而div.innerHTML = "<span><a class='link' href='https://www.google.com/' target='_blank'>Link Text</a></span>" 中需要一些其他东西。如果是这样,我会使用另一种方法,也许您可​​以告诉我们有关您问题的更多详细信息。