git / git-flow:通过合并重新集成上游更改后,使用rebase重新组织分支

时间:2015-12-01 10:26:28

标签: git version-control merge git-flow

我有一个基于某个上游版本X的分支Z,在功能分支中开发了一些功能A,B,C然后合并回来,在某些点有上游变化X',X'& #39;重新融入Z.

X-----------X'-------X''
 \           \        \
  Z-------Z1--Z2---Z3--Z4------Z5
   \      / \      /    \      /
    A1--A2   B1--B2      C1--C2

我想将我的分支Z的特征A,B,C移植到另一个分支Y(上游,如X)。为了更容易地做到这一点,我首先要像这样解开Z:

X--X'--X''
        \
         Z-------Z1------Z2------Z3
          \      /\      /\      /
           A1--A2  B1--B2  C1--C2

我的第一个想法是使用git rebase --onto X'' X Z3,它有效但杀死了所有合并,所以结果看起来更像

X''--A1--A2--B1--B2--C1--C2

我的下一次尝试是git rebase --preserve-merges --onto X'' X Z3,它确实......什么都没有?嗯,我想我确实告诉它保留合并,但我想保持我的"功能合并"扔掉" reintegration-merges"。

关于如何实现这一目标的任何想法或我做错了什么?

目前看来我必须通过仔细挑选和/或重新定位和重新合并我的功能分支来手动重新创建分支。

另一种选择是将功能分支压缩在一起,这样我就不必保留合并。

0 个答案:

没有答案