2013-11-27 124 views
1

我在我们的代码库中有这种情况。Git分支与ff合并从主 - 删除ff合并

我们创建了一个分支,但是,我们错误地将主人合并了几次(这导致了几次快进合并)。现在我们在分支生命期间的某个时间点完成了分支和代码合并的提交(尽管这只是一个星期)。

我该如何删除快进,并保持我们在分支中的提交?

我正在考虑这样做。

创建一个全新的分支从提交我创造了另一个分支,然后列出所有在前面的分支上的提交内容:

git rev-list BRANCH_NAME ^master 

然后采摘樱桃由该命令中列出到新的提交分支

git cherry-pick be530cec7748e037c665bd5a585e6d9ce12bc8bc 

这会是正确的方法吗?我担心我也可能会获得快速前进(尽管这显然没有创建一个提交)。

我对Git相当陌生,所以我希望有任何建议!

谢谢! 罗伯托

回答

1

我会建议一个互动的重建。

$ git rebase -i lastKnownGoodCommitHash

你需要手动选择要保留的提交。

要删除一个,您可以简单地删除包含其散列的行(这在启动过程时会变得明显)。

有GitHub上更深入地解释它的一篇文章: https://help.github.com/articles/interactive-rebase

+0

感谢,这是另一种选择:) – Roberto