在PlasticSCM中,我该如何重新分支?

时间:2013-10-08 01:01:28

标签: branching-and-merging plasticscm

我创建了一个分支,并将变更集作为我的主分支的子进程提交。我实际上是想搁置变化并从我的主分支创建一个新的分支。如何恢复和/或使分支成为我主分支的直接子项?

我有预感,我需要revert或做subtractive merge

1 个答案:

答案 0 :(得分:3)

对于PlasticSCM,这个想法类似于下面对Git的描述:

  • 有一个分支引用您当前的提交
  • 将分支重置为最后一次正确的提交
  • 使用switchbranchbase command mention for PlasticSCM4中的this thread或简单合并提及。

      
        
    • 在PlasticSCM 3.0中执行rebase的步骤是:更改分支基础,更新,合并。
    •   
    • 在PlasticSCM 4.0中更容易,只需从您要重新分支的分支执行合并。
    •   

git中的原始答案:

如果你有:

 x--x--x--x                 main
           \
            y--y--y         child
                   \
                    z--z    mybranch

你可以做:

git rebase --onto main child mybranch

那会给你:

            z'--z'          mybranch
           /
 x--x--x--x                 main
           \
            y--y--y         child

如果您不想重新绑定我的分支的所有,那么很简单:

git checkout mybranch
git branch -b mynewbranch
git reset --hard z          # reset mybranch HEAD to the last commit before your new commit
git rebase --onto main mybranch mynewbranch

对于单次提交,您也可以使用git cherry-pick,但我总是更喜欢git rebase