Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EMF DiffMerge"

Line 1: Line 1:
 
== Introduction  ==
 
== Introduction  ==
  
EMF Diff/Merge provides a lightweight engine for comparing and merging models using IDs. Its scope includes, among others:  
+
Merging models is a common need in model-based activities, for example for team working or version control. Merging models is much more complex than merging source code. EMF Diff/Merge provides a lightweight engine for comparing and merging models using IDs.
 +
 
 +
Its scope includes, among others:  
  
 
*2-way and 3-way comparison of arbitrary EMF models (or "instance models").  
 
*2-way and 3-way comparison of arbitrary EMF models (or "instance models").  
Line 9: Line 11:
 
The tool is intended to satisfy the following requirements:  
 
The tool is intended to satisfy the following requirements:  
  
*It must realistically support the comparison and merge of large models. There is thus an emphasis on scalability and reliability.  
+
*It must support the comparison and merge of large models (scalability, reliability).  
 
*The consistency of the model being merged must be preserved by the tool whenever possible, by automatically merging interdependent differences together.  
 
*The consistency of the model being merged must be preserved by the tool whenever possible, by automatically merging interdependent differences together.  
 
*The order in which differences are merged must have no impact.
 
*The order in which differences are merged must have no impact.

Revision as of 04:33, 27 July 2012

Introduction

Merging models is a common need in model-based activities, for example for team working or version control. Merging models is much more complex than merging source code. EMF Diff/Merge provides a lightweight engine for comparing and merging models using IDs.

Its scope includes, among others:

  • 2-way and 3-way comparison of arbitrary EMF models (or "instance models").
  • Matching of model elements by ID, where an ID can be any "signature" that uniquely identifies the element within its scope: Ecore ID, XML ID, qualified name, location in model tree, etc.
  • A simple GUI with reusable UI components.

The tool is intended to satisfy the following requirements:

  • It must support the comparison and merge of large models (scalability, reliability).
  • The consistency of the model being merged must be preserved by the tool whenever possible, by automatically merging interdependent differences together.
  • The order in which differences are merged must have no impact.

The final goal is to obtain a mature, versatile software building block for multiple usages: version control, incremental model transformations, model refactoring, etc.

The EMF Diff/Merge project is part of EMF.

Usage

Download

Links

Back to the top