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

标签 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

最佳答案

这是 cherry-pick 的工作。尝试一下

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

您还可以使用 gitrevisions documentation 中描述的语法指定提交范围。在此示例中,您想要 merge 可从 new-feature 分支访问的提交,但不能从 dev-team1 分支访问,因此您可以编写

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

另请查看有关 how to merge a specific commit in Git 的帖子.

关于Git 将一个分支复制到另一个分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21217342/

相关文章:

Git日志不包括分支

git - Git分支未显示所有分支

git - 在不删除旧分支的情况下进行 rebase

javascript - React Native项目中的Git和esformatter的使用

git - 如何使用 Node.js 获取远程 git 分支?

git - git format-patch 输出的第一行是什么?

Git:使用 rebase 应用主题分支(不 merge )

git - 断开本地分支与远程分支的连接

git - 更新本地但无法推送

git - 无法完成 Git Rebase