合并后,git重新建立到其他分支

时间:2020-03-20 16:15:10

标签: git version-control rebase

我正在为Visual Studio使用git适配器。这个问题是关于在已经合并到分支之后重新部署到另一个分支。

我们有一个功能分支(我是唯一使用它的开发人员)。不久前,它与之前和之后的许多其他功能分支合并到我们的Develop分支中。客户决定推迟Develop分支上大部分工作的发布,并自行发布Feature分支上的工作。

我想要做的是将功能分支重新建立到先前的发行分支上,并从那里创建一个新的发行分支。那行得通吗? 功能分支的代码比以前的发行分支新。但是我假设重新设置将不会在乎,它只会将我所做的更改重新设置到旧版本分支上吗? 我认为Develop分支不会受到影响?(这很好,因为我们必须合并新的release分支才能进行开发,然后再将其放入发布中。)

  • 第10版
  • 第10版之后完成的新工作,并已合并到Develop分支
  • 从Develop创建的功能88
  • 功能88合并以开发
  • 更多功能合并到Develop
  • *我要做的是将Feature 88重新建立到Release 10上,然后从中创建Release 11。 假设Develop分支不受影响,并且仅将已提交的工作应用于Release 10分支,重新设置基准就可以了吗?

最终,版本11的工作将被合并到Develop分支,并将用于版本12。

1 个答案:

答案 0 :(得分:1)

那是使用功能分支的原因之一。

假设您的功能分支由5次提交组成。您可以将它移动到任何地方:

git rebase --onto new-base feature-branch~5 feature-branch

假设您的要素分支没有合并并且是一条直线。

现在,您的工作流程将变得更加清晰:

git checkout -b release11 release 10
git rebase --onto release11 feature-branch~5 feature-branch

这会将要素分支从当前位置移开。...您可能考虑签出并分离工作。

git checkout --detach feature-branch
git rebase --onto release11 HEAD~5 HEAD

那应该做