Index: PropertyConflict.java
===================================================================
--- PropertyConflict.java	(revision 1566)
+++ PropertyConflict.java	(working copy)
@@ -27,6 +27,15 @@
 
     @Override public void apply(OsmPrimitive target, OsmPrimitive other) {
         target.put(key, other.get(key));
-        target.version = Math.max(target.version, other.version);
+        // sync versions.  target.version = Math.max(target.version, other.version)
+        // is not sufficient. Consider a conflict where the user decided to keep his
+        // local data. the local primitive ('other' in  this case) should have the
+        // higher version, too.
+        //    target               other
+        //       key=value1         key=value2
+        //       version=21         version=20 
+        int newversion = Math.max(target.version, other.version);
+        target.version = newversion;
+        other.version = newversion;
     }
 }
\ No newline at end of file
