两个分支上的Git Rebase每次都有相同的冲突

时间:2013-12-05 21:55:04

标签: git github

我通常使用三个主要分支。我们可以称之为掌握,升级和开发。几周前,我想我或我团队中的某个人以一种奇怪的方式重新组合或合并某些内容,以至于现在每当我们对开发进行更改然后尝试将它们重新定位到分段时,我们就会在单个文件上产生冲突。发生这种情况时,HEAD始终是正确的。当我手动进入并选择它并尝试git git rebase --continue时,我得到:

  

没有变化 - 您是否忘记使用'git add'?如果什么也没有了   到舞台,很可能已经引入了相同的东西   变化;你可能想跳过这个补丁。

所以,我现在可以通过运行git rebase --skip来解决这个问题,只需要使用HEAD,然后在登台分支中进行新的更改。当我尝试将升级转换为掌握时,会发生同样的事情。这样就可以了,除了这个完全相同的事情发生每次我现在在这些分支之间进行变基,并且问题始终是旧的完全相同的文件

经过检查,由于某种原因,开发和暂存似乎都是按照错误的时间顺序进行的。我该如何解决?问题似乎发生在11月下旬,并且所有分支从那时起共享相同的提交。从11月下旬订购开发和分段的提交按照与master(或按时间顺序)相同的顺序排序对我来说没问题。最重要的是我只想再次正常变换。

1 个答案:

答案 0 :(得分:0)

我通过改变主人的另外两个分支来解决这个问题:

git checkout some_branch
git rebase master

让提交正确排序(没有其他任何改变,所以重新排序就是这一切),然后强制推送到原点。然后让我的队友将这些分支重置为原点:

git fetch --all
git reset --hard origin/some_branch

不是最优雅的解决方案,但在我们的案例中非常快,而且由于我没有得到任何其他答案,我会为面临同样问题的任何人提供此解决方案。