Index: src/reverter/DataSetCommandMerger.java
===================================================================
--- src/reverter/DataSetCommandMerger.java	(revision 35363)
+++ src/reverter/DataSetCommandMerger.java	(working copy)
@@ -49,7 +49,8 @@
     }
 
     private void addChangeCommandIfNotEquals(OsmPrimitive target, OsmPrimitive newTarget, boolean nominal) {
-        if (!target.hasEqualSemanticAttributes(newTarget) || target.isDeleted() != newTarget.isDeleted() || target.isVisible() != newTarget.isVisible()) {
+		if (!target.getKeys().equals(newTarget.getKeys()) || !target.isIncomplete() != newTarget.isIncomplete()
+				|| target.isDeleted() != newTarget.isDeleted() || target.isVisible() != newTarget.isVisible()) {
             cmds.add(new ChangeCommand(target, newTarget));
             if (nominal) {
                 nominalRevertedPrimitives.add(target);
