我有两个正在使用的(专用)功能分支。

a -- b -- c                  <-- Master
     \     \
      \     d -- e           <-- Branch1
       \
        f -- g               <-- Branch2

在这些分支上工作了一段时间后,我发现需要在Branch1中的Branch2中进行更改。我想将Branch2中的更改重新部署到Branch1上。我想得出以下结论:
a -- b -- c                  <-- Master
           \
            d -- e -- f -- g <-- Branch1

我很确定我需要将第二个分支重新设置为第一个分支,但是我不确定完全正确的语法以及应该检查出哪个分支。

这个命令会产生想要的结果吗?
(Branch1)$ git rebase --onto Branch1 Branch2

最佳答案

  • 切换到Branch2
    git checkout Branch2
    
  • 将当前(Branch2)更改应用到Branch1更改的顶部,并保持
    在Branch2中:
    git rebase Branch1
    

  • 这将使您在Branch2中获得理想的结果:
    a -- b -- c                      <-- Master
               \
                d -- e               <-- Branch1
               \
                d -- e -- f' -- g'   <-- Branch2
    

    您可以删除Branch1。

    08-27 16:33