[编辑:这个问题导致在 EMF 比较中发现一个错误,该错误阻止它与 SVN 存储库一起使用。按照计划在 6 月 28 日发布的 Eclipse Kepler (4.3) 版本中进行这项工作。]
(免责声明:我是 EMF Compare 开发团队的一员,他们将解释下面的“我们”和“我们”:p)
您可能已经发现,EMF 比较 wiki 几乎完全过时了:它包含许多仅适用于 EMF 比较 1 的信息,只有少数部分已更新以适用于 EMF 比较 2。这在我们的优先事项列表中,但是在我们可以切换到正确更新 wiki 之前,仍然需要修复一些小问题以稳定这个版本。
[编辑:维基现在已经更新了更准确的信息,虽然缺少部分,但不再有任何过时的部分。]
至于你的假设
emf compare 仅在“比较”菜单中提供相互比较选项
事实上,EMF Compare不会为工作台或其菜单提供任何选项。我们在较低的层次上集成。“比较”菜单中可用的所有项目均由您正在使用的存储库提供者(CVS、Git、Clearcase...插件)或平台本身提供。
然后,如果内容类型匹配,则从平台调用 EMF Compare,无论您是使用compare with > each还是compare with > latest from repository ... 或任何其他都无关紧要。
使用 EMF Compare 2,我们还没有重新添加自定义内容类型,但是您可以使用org.eclipse.emf.ecore.xmi扩展来获得相同的结果,您已经完成了。
与存储库中的 > latest 比较没有显示任何差异意味着我们未能为您的文件检索到正确的“远程”内容。您可以使用显示“EMF 比较”的中心下拉菜单切换回文本比较(从模型比较编辑器):只需在其中选择“文本比较”。在那里,您应该看到文件之间的文本差异:如果没有,那么我们确实未能检索到正确的远程内容(或者您实际上没有本地文件和远程文件之间的差异)。
如果是这种情况,您的错误日志中是否显示任何内容(Window > Show View > Error Log)?你使用什么存储库,CVS?当您完全禁用 EMF 比较时,您的比较实际上是否显示了文件之间的文本差异?