EMF Compare + EGit = Seamless Collaborative Modeling
Dealing with comparison and merge of large models in large teams
When teams work together on EMF models, they quickly face the diff/merge hell. Version control is very well addressed for code and textual files by modern VCS such as our favourite git (and its great Eclipse integration with EGit).
But this does not address the issue for users collaborating on structured data, such as EMF(-based) models: For instance, try and merge model files in a textual manner, you’ll realize that your models tend to get corrupted. If you ever tried to merge XMI files, you know what I mean…
So we’ve been working on EMF Compare and EGit to integrate the Eclipse Team ‘logical model’ concept to give users the capacity to efficiently compare and merge models accurately, taking the semantics into account. This enables git-based collaboration workflows to work seamlessly with models, thus preventing corruption of data during merges, rebases, and so on.
In this talk, we will describe use-cases where lack of support for logical models prevents collaborative work on structured data from being effective. We will also explain how we support each use-case with EMFCompare + EGit to achieve efficient collaboration on models split in hundreds of resources with teams of tens of people located in different time-zones.