Git将一个分支复制到另一个分支

时间:2014-01-19 13:26:14

标签: git git-branch git-rebase git-cherry-pick

我有以下情况:

                      K---L new-feature
                     /
            H---I---J---M dev-team1
           /
          E---F---G dev-main
         /
A---B---C---D master

我想只移动 dev-main 分支中的 new-feature (K --- L)分支(H --- I --- J)表单 dev-team1 ,但我希望 new-feature (K --- L)分支保留为单独的分支。

类似的东西:

                      K---L new-feature
                     /
            H---I---J---M dev-team1
           /
          E---F---G---K'---L' dev-main
         /
A---B---C---D master

2 个答案:

答案 0 :(得分:4)

这是cherry-pick的工作。尝试

git checkout dev-main
git cherry-pick K
git cherry-pick L

您还可以使用gitrevisions documentation中描述的语法来指定一系列提交。在此示例中,您希望合并从new-feature分支但不能从dev-team1分支到达的提交,因此您可以编写

git checkout dev-main
git cherry-pick dev-team1..new-feature

另请查看有关how to merge a specific commit in Git

的帖子

答案 1 :(得分:0)

你可以合并忽略规范提交H和I,并将其余部分与dev-main合并为new-feature。

git - skipping specific commits when merging