I have a custom comparison where it happens that incremental mode is set
to true. I now compare two models that are almost equal. The sole
difference is that the 'left' model has an additional element. When I
now select "X" to delete that element on the left, a dialog pops up with
"No differences to merge".
I figured that the cause is in ComparisonViewer line 204ff:
That's it: given an arbitrary selection in the GUI, the incremental mode allows merging the related differences that do not (directly) delete information.
Let's say you want to reconcile the work done by two people in parallel. You could start with the model provided by one of the two and classically go through the changes made by the other one. But you could also adopt a faster, more optimistic approach that consists in considering that all the non-destructive work done by the other person should be integrated, because it is not harmful anyway, and that only deletions should be considered with care. So you would first merge all differences in incremental mode, then go through the remaining differences.
Ok I see.. I managed to create an example where this made some sense. But here's an odd case: So let's say default incremental mode is true and the user selects a single element presence and clicks on the 'X' to delete the presence. The result is a dialog "No differences to merge". (Actually that's how I found out about incremental mode..)