Git 壁球大师现在需要合并另一个分支

Git 壁球大师现在需要合并另一个分支,git,Git,对于一个项目,我有两个git分支,master和dev。昨天我正在学习如何使用git-rebase来交互压缩提交。我压缩了master分支,现在它只包含几个提交。今天,我在我的dev分支上工作(我在挤压master之前进行了分支),并在此dev分支上进行了大量提交。现在,我想将我的dev分支合并回我的压缩master。我太傻了,但我意识到这是错误的 现在如何将我的dev分支合并到一个压缩的master?有没有办法做到这一点 我假设您从master分支的提交dev受到挤压的影响,否则不应该存在任何

对于一个项目,我有两个git分支,
master
dev
。昨天我正在学习如何使用git-rebase来交互压缩提交。我压缩了
master
分支,现在它只包含几个提交。今天,我在我的
dev
分支上工作(我在挤压
master
之前进行了分支),并在此
dev
分支上进行了大量提交。现在,我想将我的
dev
分支合并回我的压缩
master
。我太傻了,但我意识到这是错误的


现在如何将我的
dev
分支合并到一个压缩的
master
?有没有办法做到这一点

我假设您从
master
分支的提交
dev
受到挤压的影响,否则不应该存在任何“非自然”合并冲突

我可以想出两种方法来做您想做的事情,而不必实际处理这些合并冲突:

  • 撤消在
    master
    上进行的挤压。
    master
    的预挤压状态很可能仍在存储库中-使用
    git reflog
    查找它,并使用
    git reset
    master
    重置为它。如果您在挤压后对
    master
    进行了额外的提交,您可以使用
    git cherry pick
    将它们放到还原的
    master
    上。如果您已经按下挤压的
    master
    并且其他人正在使用它,则此选项可能不可行

  • git cherry将您在
    dev
    上所做的额外提交挑选到
    master
    ,然后删除不可合并的
    dev
    分支。如果您已经推送了
    dev
    ,而其他人正在使用它,则此选项可能不可行


  • 你为什么不干脆
    git合并主机
    ?是因为您不想重新引入您压扁的提交吗?是什么阻止了您这样做?dev是否从不再存在的提交分支?您应该能够
    git checkout master;git merge dev
    如果你真的想这么做的话。我试着按照@gturri/@PaulHicks的建议去做。然而,我得到了大量的合并冲突。是否仍有将dev合并到master中的方法,但保留所有dev更改以避免合并冲突?谢谢您的帮助。我尝试使用,
    git cherry pick
    进行cherry pick,但出现错误:
    无法应用902217c
    提示:解决冲突后,标记更正的路径…
    。你知道我怎么解决这个问题吗?