Bug 471592 - Comparison of isolated model includes new remote models even if not related
Summary: Comparison of isolated model includes new remote models even if not related
Status: NEW
Alias: None
Product: EMFCompare
Classification: Modeling
Component: Core (show other bugs)
Version: 3.0.1   Edit
Hardware: PC Windows NT
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: EMF Compare CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-07-01 09:56 EDT by Laurent Delaigue CLA
Modified: 2015-08-11 06:14 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Laurent Delaigue CLA 2015-07-01 09:56:01 EDT
Use attachment 254412 [details]

Check-out branch "third0".
Right-click on "model" (which has no reference to model 3 in any branch)
Compare it with branch "third1".

I would expect the comparison to indicate that there's no change whatsoever.

Currently, the synchronize view opens and displays the new remote files model3.di, .notation and .uml. Just as if I had compared the whole project.
Comment 1 Stefan Dirix CLA 2015-08-11 06:14:42 EDT
I briefly looked at this bug. Unfortunately I am not sure if this is easily solvable.

When running the CompareWith action, eGit first determines if the SynchronizeView should be opened. Since there is an EMFResourceMapping containing model.di/model.notation/model.uml (ergo more than one file) the result is yes.

The SynchronizeView is then opened with all relevant files in the context. These are determined via all ResourceMappings including the ones from eGit containing all files which have been touched in the corresponding commits.

The issue with the SynchronizeView is that it actually only is a simple gateway to the "real" comparisons. It only performs very lightweight comparisons itself: It looks at all relevant files and filters the ones which have not been touched but does not look at their content at all. 

So currently the SynchronizeView can not know if the model3 files are or are not relevant to model2.