3

私はEmfCompare2を使用して、Eclipseのチームサポートと統合しています。ここでemfcomparefaqページの指示に従いますが、コンテンツタイプID「org.eclipse.emf.compare.ui.contenttype.ModelContentType」は無効になっているようです。私が試したもう1つの方法は、カスタムファイル拡張子とorg.eclipse.emf.ecore.xmiの間にファイルタイプの関連付けを追加して、emf compareがファイルを取得し、自動的に差分を実行できるようにすることでした。このように、emfモデル比較エディターが表示されますが、モデルにいくつかの変更を加えたと確信していても、違いはないと表示されます。私は何をすべきか?

[編集]emfcompareモジュールを確認しましたが、emf compareは、[Comparewith]メニューの[Comparewith]オプションのみを提供していることがわかりました。2つのファイル間の比較が機能しています。したがって、残っている質問は、「Comparewith」>「latestfromrepository」オプションをemfcompareeditorで機能させる方法です。

4

1 に答える 1

5

[編集: この質問は、SVN リポジトリでの使用を妨げる EMF Compareのバグの発見につながりました。6 月 28 日に予定されている Eclipse Kepler (4.3) リリースで計画されているように、これに取り組みます。]

(免責事項: 私は EMF Compare 開発チームの一員であり、以下の「私たち」と「私たち」について説明します:p)

お気づきかもしれませんが、EMF Compare wiki はほとんど完全に時代遅れです: EMF Compare 1. にのみ適用される多くの情報が含まれており、EMF Compare 2. に適用されるように更新された部分はわずかです。これは私たちの優先事項のリストにありますが、ウィキの適切な更新に切り替える前に、このバージョンの安定化に関していくつかの問題を修正する必要があります。

[編集: ウィキは現在、より正確な情報で更新されており、欠落しているセクションはありますが、古いセクションはもうありません。]

あなたの仮定に関しては

emf 比較は、「比較」メニューで相互に比較するオプションのみを提供します

実際、EMF Compareは、ワークベンチまたはそのメニューにオプションを提供しません私たちはより低いレベルで統合されています。「比較対象」メニューから使用できるすべての項目は、使用しているリポジトリ プロバイダ (CVS、Git、Clearcase... プラグイン) またはプラットフォーム自体によって提供されます。

EMF Compare は、コンテンツ タイプが一致する場合に、プラットフォームから呼び出されます。compare with > each otherを使用しているか、compare with > latest from repository ... を使用しているか、その他のいずれかを使用しているかどうかは問題ではありません。

EMF Compare 2 では、まだカスタム コンテンツ タイプを再度追加していませんが、org.eclipse.emf.ecore.xmi拡張機能を使用して同じ結果を得ることができます。

リポジトリから > 最新のものと比較して違いが表示されないということは、ファイルの適切な「リモート」コンテンツを取得できなかったことを意味します。「EMF 比較」を示す中央のドロップダウン メニューを使用して、(モデル比較エディターから) テキスト比較に戻すことができます。そこで「テキスト比較」を選択するだけです。そこに、ファイル間のテキストの違いが表示されます。何もない場合は、適切なリモート コンテンツを取得できませんでした (または、実際にはローカル ファイルとリモート ファイルの間に違いはありません)。

その場合、エラー ログ ( [ウィンドウ] > [ビューの表示] > [エラー ログ] ) に表示されるものはありますか? CVS、どのリポジトリを使用していますか? EMF 比較を完全に無効にすると、ファイル間のテキストの違いが実際に比較されますか?

于 2013-01-02T09:15:46.387 に答える