我几天前问了一个类似的问题,但是没有得到有用的答案,所以我想让一切更加精确。
我在Github上有一个大型项目,作为私有repo。我和我的朋友正在开发它。我将整个repo导入本地存储库和eclipse中,一切都很顺利,直到合并冲突出现。每当我遇到合并冲突(例如,当我忘记在经常使用的类上工作之前拉取时),我的eclipse工作区就会切换到“带合并的Rebase”状态:
现在我会得到标记,表示出现了合并冲突。因此,我打开要与合并工具合并的类,编辑我需要更改的所有内容,然后再次将该类添加到索引中。
接下来,我提交了所有合并更改,并将一切推送到上游到主分支(因为我们两个人都没有太多关于git和vcs/svn的经验,所以我们只使用主分支)。
但是现在,我既无法切换回主分支,也无法取消rebase或执行其他任何操作。
我尝试了:
右键单击项目文件夹->Team -> Switch To -> master。
这是错误通知。
接下来,有人告诉我在Git Repositories视图中取消rebase:
但是我的本地repo和远程repo都没有与rebase相关的选项。
接下来,我在本地分支的菜单中尝试了“checkout”。结果相同。 我还尝试将本地分支推送到上游:
这是我预设的合并/变基选项,但这两个选项都会带来相同的结果:
我在Github中查看了我的repo - 所有的更改,包括合并解决,都已经推送到master分支并准备好获取。我的队友可以拉取它们并继续项目工作。但我无法逃脱这个Rebase w/merge状态。每次出现这种状态,我都必须删除所有项目资源,删除本地存储库,重新导入eclipse中的所有内容,最后,我不得不一遍又一遍地进行所有额外的配置。
所以:我该如何逃脱这个变基?另外,变基和合并有什么区别?