wiki:Help/Dialog/Conflict

Version 20 (modified by DiGro, 4 months ago) ( diff )

small typo corrected

This page needs a review as the conflict dialog changed a bit and the properties tab plus the buttons in the nodes and members tabs are not documented. Most screenshots are outdated

Conflict Dialog

The Conflict Dialog is used to resolve conflicts between two versions of an OSM object.

The dialog has four tabs but depending on the object type only some are active, though, the Properties and the Tags tab are always active. The tabs from left to right are:

Properties
Conflicts in main properties of the object
Tags
Conflicts in tags
Nodes
Conflicts in the node list (only relevant for source:trunk/resources/images/data/way.svg ways)
Members
Conflicts in members (only relevant for source:trunk/resources/images/data/relation.svg relations)

If there are conflicts in a tab it is indicated with a red square (source:trunk/resources/images/dialogs/conflict/mergeincomplete.svg) in front of the name and in case of tag conflicts the number of conflicting tags is display in brackets behind the name. All conflicts in these tabs need to be solved.
If there are no (more) conflicts in a tab it is indicated with a green check mark (source:trunk/resources/images/misc/green_check.svg) in front of the name. Once all active tabs have a green check mark, the object's version conflict is solved and the dialog can be closed with source:trunk/resources/images/dialogs/conflict.svg Apply Resolution.

All tabs have a similar structure and are basically three columns each containing a table, from left to right:

  • My version: shows the first object version participating in this conflict. This is usually the object version in your local data set.
  • Merged version: shows the solution, e.g. the result after solving the conflict. This table is initially empty.
  • Their version: shows the second object version participating in this conflict. This is usually the object version currently stored on the server.
    • In case of a conflict after source:trunk/resources/images/dialogs/mergedown.svg Merge layer or source:trunk/resources/images/dialogs/mergedown.svg Merge selection this is the version of the origin.
    • In case of a conflict between the Relation Editor and the data layer this is the version of the relation editor.

Resolving differences between properties

If the properties (Coordinates or Deleted State) of one version of an object are different from the properties of another version, the Conflict dialog shows a red square (source:trunk/resources/images/dialogs/conflict/mergeincomplete.svg) in the tab Properties. Click on the tab to display the window for resolving property conflicts.

In the example below "Coordinates" and "Deleted State" values in the two object versions are different, though, and JOSM therefore displays the row with a red background. In the first version the object is "not deleted", the opposite version is "deleted". You now have to decide which of these values you want to keep and which you want to discard.

Select the values you want to keep, in the example for instance the value on the left. If you click on one of the buttons between the tables, source:trunk/resources/images/dialogs/conflict/tagkeepmine.svg or source:trunk/resources/images/dialogs/conflict/tagkeeptheir.svg, you decide to keep the values and to discard the opposite values.

The table in the middle now displays the values to keep and the background color turns to green. Selected values in the middle table can be cleared again with the button below the table (source:trunk/resources/images/dialogs/conflict/tagundecide.svg).
Once all tag conflicts are solved the green check mark (source:trunk/resources/images/misc/green_check.svg) is displayed in front of the name of the tab and if there are no further conflicts in other tabs the button source:trunk/resources/images/dialogs/conflict.svg Apply Resolution is enabled you can apply your decision. The values you've chosen will be applied and the dialog will be closed.

Resolving differences between tags

If the tags of one version of an objects are different from the tags of another version, the Conflict dialog shows a red square (source:trunk/resources/images/dialogs/conflict/mergeincomplete.svg) in the tab Tags plus the amount of conflicting tags. Click on the tab to display a dialog for resolving tag conflicts.

There are three tables displayed in this dialog, from left to right:

  • My version: shows the tags of the first object version participating in this conflict. These are usually the tags of the object version in your local data set.
  • Merged version: shows the final tags. This table is initially empty. The more tag conflicts you resolve, the more tag values will be displayed in this table.
  • Their version: shows the tags of the second object version participating in this conflict. These are usually the tags of the object version currently stored on the server.

In the example below both versions have a tag "name". The values in the two object versions are different, though, and JOSM therefore displays the row with a red background. The value of the first version is "Secondary School", the opposite version has a value "Elementary School". You now have to decide which of these values you want to keep and which you want to discard.
Note: To quickly solve single tag conflicts, the tags in the first tag of both outside tables are by default selected and therefore their background is blue and only the middle table has a red background.

Select the values you want to keep, in the example for instance the value on the left. If you either double-click on the value or click on one of the buttons between the tables, source:trunk/resources/images/dialogs/conflict/tagkeepmine.svg or source:trunk/resources/images/dialogs/conflict/tagkeeptheir.svg, you decide to keep the values and to discard the opposite values. The table in the middle now displays the values to keep and the background color turns to green. Selected values in the middle table can be cleared again with the button below the table (source:trunk/resources/images/dialogs/conflict/tagundecide.svg).

Once all tag conflicts are solved the green check mark (source:trunk/resources/images/misc/green_check.svg) is displayed in front of the name of the tab and if there are no further conflicts in other tabs the button source:trunk/resources/images/dialogs/conflict.svg Apply Resolution is enabled you can apply your decision. The values you've chosen will be applied and the dialog will be closed.

Resolving differences in the node/member list of two versions of a way/relation

If you see a red square (source:trunk/resources/images/dialogs/conflict/mergeincomplete.svg) in the tab Nodes respectively Members then you have to resolve differences in the list of source:trunk/resources/images/data/node.svg nodes of two source:trunk/resources/images/data/way.svg ways respectively the list of members of two source:trunk/resources/images/data/relation.svg relations. There are three columns of tables in the respective panel (see screen shot below):

  • the leftmost table displays the list of nodes/members of the the local object version
  • the rightmost table displays the list of nodes/members of the the server object version
  • the table in the middle shows the list of nodes/members of the merged way/relation

Initially, the middle table is empty. You should now decide which nodes/members to keep from the local dataset (the leftmost table) and which from the server dataset (the rightmost table) and in which order.

The standard workflow

The standard workflow to resolve conflicts in the node lists of two object versions consists of three steps:

  1. Pick nodes from either object version and reorder the resulting node list if necessary
  2. Freeze the resulting merged node list by clicking on the Freeze button (). When you freeze the merged node list you tell JOSM that all conflicts in the node list are resolved.
  3. source:trunk/resources/images/dialogs/conflict.svg Apply Resolution

A simple workflow: Keep the node list from your local object version

The following example shows the workflow when you decide to keep all nodes in the same order from your local object version.
(Example is out of date (new buttons), but still works.)

First, select all elements in the leftmost table (either using the mouse or by pressing Ctrl+A in the table) (see next screen shot):

Then, click on the top button right of the table (source:trunk/resources/images/dialogs/conflict/copystartleft.svg) to copy the selected nodes to the middle table with the merged nodes:

Finally, click Freeze () to freeze the resulting merged node list:

The symbol in the nodes tab now switched to a green check mark (source:trunk/resources/images/misc/green_check.svg) and you can apply the merge decisions.

Support for comparing node/member lists

It can be difficult to find the differences between the node/member list of of two object versions, in particular for ways/relations with many nodes/members.

The Conflict Dialog supports you in finding the differences. It can compare two of the lists displayed ("my" list, the "merged" list, and "their" list) and it can render the differences between them with specific background colors.

From the following combo box you can select which pair of lists to compare:

  • My with Their: compares the leftmost table with the rightmost table in the Conflict Dialog
  • My with Merged: compares the leftmost table with the middle table in the Conflict Dialog
  • Their with Merge: compares the middle table with the rightmost table in the Conflict Dialog

Depending on the position of a node/member in the list different background colors are used:

  • - red - the node/member is in this list only. It isn't present in the opposite list.
  • - rose - the node/member is in both lists, but it is on different positions
  • white background means that a node/member is in both lists at the same position

Hints

  • Make sure you don't edit outside of the area you have downloaded in order to reduce the problem of conflicts
  • Resolve conflicts by opening the Conflict Panel, selecting the one of the listed conflicts and choosing whether to accept theirs or mine.

Back to Conflict Panel
Back to Conflict
Back to Main Help

Attachments (37)

Note: See TracWiki for help on using the wiki.