我有两个git分支,master
和dev
用于项目。昨天我正在学习如何使用git rebase
进行交互式壁球提交。我压扁了我的master
分支,它现在只包含一些提交。今天我在我的dev
分支上工作(我在压缩master
之前分支)并在这个dev
分支上做了一些提交。现在,我想将我的dev
分支合并回我压扁的master
。这对我来说很愚蠢,但我意识到这是错误的事情。
我现在如何将dev
分支合并为一个被压扁的master
?有没有办法做到这一点?
答案 0 :(得分:0)
我假设您从dev
分支master
的提交受到壁球的影响,否则不会出现任何“不自然”的合并冲突。
我可以通过两种方式来做你想做的事情而不必实际处理那些合并冲突:
撤消您在master
上所做的压力。挡风前状态master
很可能仍在您的存储库中 - 使用git reflog
找到它,git reset
重置master
到它。如果您在壁球后master
进行了其他提交,则可以使用master
将其恢复到已恢复的git cherry-pick
。如果您已经按下被压扁的master
并且其他人正在使用它,则此选项可能不可行。
git cherry-pick
您在dev
上对master
执行的其他提交,然后删除了不可合并的dev
分支。如果您已经推送dev
并且其他人正在使用此选项,则此选项可能不可行。