x

Re: Kleine Fragen 2014


Geschrieben von Netzwolf (Gast) am 03. März 2014 02:18:52: [flux]

Als Antwort auf: Kleine Fragen 2014 geschrieben von Nop (Gast) am 31. Januar 2014 10:49:

Nahmd,

Serienchiller wrote:

Mal angenommen ich lade mir einen Ausschnitt herunter, arbeite an ein paar Stellen und lade dann alles wieder hoch. In der Zwischenzeit hat aber ein anderer Mapper andere Stellen im selben Ausschnitt überarbeitet und hochgeladen. Werden dann seine Bearbeitungen durch meinen Upload wieder rückgängig gemacht?

Der heruntergeladene Ausschnitt ist ohne Bedeutung. Wichtig ist nur, welche Elemente (Nodes, Ways, Relations) Du verändert hast und also hochladen willst: wenn nach dem Herunterladen eines Elementes e ein anderer dieses Element auf dem Server verändert, kannst Du es nicht mehr hochladen. Löschen ist dabei äquivalent einer Änderung: hat ein anderer das Objekt gelöscht, kannst Du keine neue Version hochladen (und es auch nicht löschen). Hast ein anderer es geändert, so kannst Du es nicht löschen. Das gilt selbst bei identischen Änderungen, weil es sich nicht am Inhalt des Elements, sondern ausschließlich an der Version orientiert.

Du kannst also nicht aus Versehen Änderungen überschreiben.

Der vom Editor gemeldete “Versionskonflikt” bedeutet, dass auf dem Server eine neuere Version eines Elementes liegt als Deiner Bearbeitung zugrunde liegt. Zum Lösen des Konfliktes lädt der Editor die aktuelle Version des Elementes vom Server und zeigt Dir diese Serverversion parallel zu der von Dir bearbeiteten Version. Du darfst™ beide Versionen zusammenführen, und das Ergebnis dann hochladen (so das Element auf dem Server nicht schon wieder geändert wurde).

Am Beispiel: auf dem Server lag “Version 1: building=yes”. Das haben sowohl Du als auch Dein Kollege heruntergeladen. Dein Kollege fügt ein “tourism=hotel” hinzu und lädt hoch. Damit auf dem Server: “Version 2: building=yes; tourism=hotel”. Du fügst bei Dir “name=Zur Post” hinzu und willst hochladen: das führt zum Konflikt, weil Deine Änderung auf Version 1 basiert, der Server aber bereits Version 2 hat.

Zur Auflösung lädt Dein Editor Version 2 herunter und zeigt Dir an:

  • Server: “building=yes; tourism=hotel”
  • Editor: “building=yes; name=Zur Post”

Die verschmilzt Du zu “building=yes; name=Zur Post; tourism=hotel”, und lädst sie dann als Version 3 auf den Server.

Sind vom Konflikt nur Attribute betroffen, so ist er einfach zu lösen. Bei Ways kann auch die Struktur betroffen sein, also Du und Dein Kollege haben Nodes ergänzt/gelöscht. Das zu fixen ist nicht mehr trivial. Und das Auflösen von Konflikten zwischen Relationsversionen kann so gruselig sein, dass man lieber verwirft und neu bearbeitet.

JOSM bietet die nette Funktion “Daten aktualisieren”, die zu allen heruntergeladenen Elementen nachschaut, ob es auf dem Server eine neuere Version gibt, und neuere Versionen lädt. Bei aufwendigen Edits an Ways und (besonders) Relationen empfiehlt sich ein häufiges “Daten hochladen” und “Daten aktualisieren”.

Gruß Wolf