Как интегрировать сравнение ЭДС с поддержкой команды eclispe
Я использую Emf Compare 2 для интеграции с поддержкой команды из Eclipse. Я следую инструкции от emf сравнить страницу faq здесь, но кажется, что идентификатор типа контента "org.eclipse.emf.compare.ui.contenttype.ModelContentType" больше не действителен. Другой способ, которым я пытался, - это добавить сопоставление типов файлов между моим пользовательским расширением файла & org.eclipse.emf.ecore.xmi, чтобы сравнение с помощью emf могло забрать мой файл и автоматически выполнить diff. Таким образом, появляется редактор сравнения моделей ЭДС, но он говорит, что различий нет, хотя я почти уверен, что внес некоторые изменения в модель. Что я должен делать?
[править] Я проверил модуль сравнения emf, и оказалось, что сравнение emf только добавляет опцию сравнения друг с другом в меню "Сравнить с". Сравнение между 2 файлами работает. Таким образом, остается вопрос, как сделать так, чтобы опция "Сравнить с" > "последний из репозитория" работала с редактором сравнения emf
1 ответ
[Редактировать: Этот вопрос привел к обнаружению ошибки в EMF Compare, которая не позволяет использовать его с SVN-репозиториями. Работа над этим запланирована на выпуск Eclipse Kepler (4.3), выход которого запланирован на 28 июня.]
(отказ от ответственности: я являюсь частью команды разработчиков EMF Compare, которая объяснит ниже "наши" и "мы":p)
Как вы, возможно, уже узнали, вики EMF Compare в значительной степени устарели: в ней содержится много информации, которая применима только к EMF Compare 1.Только несколько частей были обновлены для применения к EMF Compare 2.. Это в нашем списке приоритетов, но необходимо исправить некоторые ошибки, связанные со стабилизацией этой версии, прежде чем мы сможем перейти к правильному обновлению вики.
[Редактировать: Вики теперь обновлена с более точной информацией, и, хотя есть отсутствующие разделы, больше нет устаревших.]
Что касается вашего предположения
Функция сравнения ЭМП только добавляет опцию сравнения друг с другом в меню "Сравнить с"
на самом деле, EMF Compare не предоставляет никаких опций рабочему столу или его меню. Мы интегрированы на более низком уровне. Все элементы, доступные в меню "Сравнить с", предоставлены поставщиком репозитория, который вы используете (плагин CVS, Git, Clearcase...) или самой платформой.
EMF Compare затем вызывается из платформы, если тип контента совпадает, используете ли вы сравнение друг с другом или сравнение с последним из репозитория... или любое другое значение не имеет значения.
В EMF Compare 2 нам еще предстоит добавить собственный тип контента, но вы можете достичь того же результата с расширением org.eclipse.emf.ecore.xmi, что вы и сделали.
сравнение с> последним из репозитория, не показывающее различий, означает, что нам не удалось получить надлежащий "удаленный" контент для вашего файла. Вы можете переключиться обратно на сравнение текста (из редактора сравнения моделей) с помощью выпадающего меню в центре, которое показывает "Сравнение ЭМП": просто выберите там "сравнение текста". Там вы должны увидеть текстовые различия между вашими файлами: если их нет, то мы действительно не смогли получить правильный удаленный контент (или у вас фактически нет разницы между локальными и удаленными файлами).
Если это так, у вас есть что-нибудь, что появляется в вашем журнале ошибок (Окно> Показать представление> Журнал ошибок)? Какой репозиторий вы используете, CVS? Действительно ли ваше сравнение показывает текстовые различия между вашими файлами, когда вы вообще отключаете EMF Compare?