我有几个分支机构。他们是掌握,开发和几个功能分支。结构是这样的:
主 - >培养─>特色分支
所以我在功能分支中做了所有事情,然后我合并到了开发分支中,一旦我完成了程序,我通过将develop分支合并到master中来发布最终版本。
我的问题是在我的历史中,我将一个功能分支合并到主分支而不是开发分支。如何编辑该合并,以便合并分支在develop而不是master上完成。
答案 0 :(得分:0)
我认为您可以完全重写历史记录。
git branch rebase-from ffffff # 1st commit on master after the wrong merge
git branch last-good rebase-from^^ # commit before the wrong merge on master
git rebase --onto last-good rebase-from master
这将消除master的错误合并提交。
如果旧主服务器上有任何标签,则它们仍将指向操作后的原始提交,因此旧主服务器可能会保持可见状态,直到其上的最后一个标记。如果你想移动标签,你必须非常好地与所有克隆你的回购的人沟通。阅读git help tag
关于此主题的讨论。
在开始之前阅读git help rebase
。
免责声明:我不负责自己或其他人的射击。