我正在研究从GIT远程存储库克隆的Eclipse项目。 Eclipse eGit插件允许您在没有真正了解GIT的情况下开始工作,这就是我所在的地方。我最终意识到,当我做“与HEAD修订版比较”时,我并不像我第一次想到的那样与远程存储库进行比较,而是使用我的本地存储库。我现在明白我需要从远程存储库中提取更新,但不清楚我的本地更改会发生什么。我没有提交这些更改,部分是因为我认为我可能正在更新远程存储库(我现在意识到我不会),但部分是因为我发现Package Explorer文件修饰(“>”)对于识别我修改过的文件。如果我承诺,那么我认为这些迹象将会消失。
我的问题:
更新:我以为我理解其中一些是如何工作的,但我现在真的迷失了,尤其是工作空间和(本地)存储库之间的关系。
我使用Team-> Pull来更新我的存储库。由于我没有进行任何更改,我希望它能够在没有冲突的情况下工作,但它将工作空间和存储库之间的所有更改标记为冲突(混淆#1)。
我假设我需要使用Team-> Synchronize将更改带入工作区,就像我对其他VCS一样。当我这样做时,我看到了更改,但是甚至没有将非冲突更新应用于工作空间,并且没有“更新”操作来执行此操作,因此我不知道如何应用它们(混淆#2)
对于冲突的更新,我手动将更改合并到工作区副本中并使用“标记为合并”,但这似乎什么都不做。冲突没有清除。我希望在这一点上,改变只是工作空间中一个未提交的变化(混乱#3)。
我在其他地方读过要删除冲突我应该使用Team-> Add和Team-> Commit,但我不想像我原先解释的那样提交我的更改(混淆#4)。
你可以看到我很困惑!任何帮助将不胜感激。
答案 0 :(得分:1)
如果git pull不起作用,您可以使用:
git stash
git pull
git stash apply
不确定eclipse是否支持存储,因此您可能必须使用命令行。