Changes between Version 10 and Version 31 of Help/Dialog/Conflict


Ignore:
Timestamp:
(multiple changes)
Author:
(multiple changes)
Comment:
(multiple changes)

Legend:

Unmodified
Added
Removed
Modified
  • Help/Dialog/Conflict

    v10 v31  
    1 [[TranslatedPages(outdated=This page needs a review as the conflict dialog changed a bit and the member tab is not documented.)]]
     1[[TranslatedPages]]
     2
    23= Conflict Dialog =
    34[[PageOutline(1-10,Table of Contents)]]
    45 
    5 '''The Conflict Dialog is used to resolve [wiki:Help/Concepts/Conflict conflicts] between two [wiki:/Help/Concepts/Object versions] of an OSM object.'''
    6 
    7 [[Image(conflict-dialog.png)]]
    8 
    9 == Resolving differences between tags ==
    10 If the tags of one version of an objects are different from the tags of another version, the Conflict dialog shows a [[Image(source:trunk/images/dialogs/conflict/mergeincomplete.svg,middle)]] in the tab '''Tags'''. Click on the tab to display a dialog for resolving tag conflicts.
     6**The Conflict Dialog is used to resolve [wikitr:/Help/Concepts/Conflict conflicts] between two [wikitr:/Help/Concepts/Object#Objectversionsandhistory versions] of an OSM object.**
     7
     8[[Image(conflict-dialog_v19207.png,55%)]]
     9
     10The dialog has four tabs but depending on the [wikitr:/Help/Concepts/Object#NodesWaysRelations object type] only some are active, though, the ''Properties'' and the ''Tags'' tab are always active. The tabs from left to right are:
     11
     12 [#ResolvingConflictsProperties Properties]:: Basic information of the object and conflicts in main properties of the object
     13 [#Resolvingdifferencesbetweentags Tags]:: Conflicts in [wikitr:/Help/Concepts/Object#Tags1 tags]
     14 [#ResolvingConflictsNodeMemberList Nodes]:: Conflicts in the node list (only relevant for [[JOSMImage(data/way)]] [wikitr:/Help/Concepts/Object#Ways ways])
     15 [#ResolvingConflictsNodeMemberList Members]:: Conflicts in members (only relevant for [[JOSMImage(data/relation)]] [wikitr:/Help/Concepts/Object#Relation relations])
     16
     17[[Image(tabs_v19207.png)]]
     18
     19If there are conflicts in a tab it is indicated with a red square ([[JOSMImage(dialogs/conflict/mergeincomplete,link=,top)]]) 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. \\
     20If there are no (more) conflicts in a tab it is indicated with a green check mark ([[JOSMImage(misc/green_check,link=,top)]]) 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 [[JOSMImage(dialogs/conflict)]] **Apply Resolution**.
     21
     22All tabs have a similar structure and are basically three columns each containing a table, from left to right:
     23
     24* **My version**:  shows the first object version participating in this conflict. This is usually the [wikitr:/Help/Concepts/Object#Objectversionsandhistory object version] in your local data set.
     25* **Merged version**: shows the solution, e.g. the result after solving the conflict. This table is initially empty.
     26* **Their version**: shows the second object version participating in this conflict. This is usually the object version currently stored on the server.
     27 * In case of a conflict after [[JOSMImage(dialogs/mergedown)]] [wikitr:/Help/Action/MergeLayer Merge layer] or [[JOSMImage(dialogs/mergedown)]] [wikitr:/Help/Action/MergeSelection Merge selection] this is the version of the origin.
     28 * In case of a conflict between the [wikitr:/Help/Dialog/RelationEditor Relation Editor] and the data layer this is the version of the relation editor.
     29
     30[[Image(conflict-dialog-versions_v19207.png,60%,center)]]
     31
     32
     33== Resolving differences between properties ==#ResolvingConflictsProperties
     34If 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 ([[JOSMImage(dialogs/conflict/mergeincomplete,link=,top)]]) in the tab **''Properties''**. Click on the tab to display a dialog for resolving properties conflicts.
     35
     36The first three rows display basic information of the object, for ''My version'' and for ''Their version'', similar to the [[JOSMImage(dialogs/history)]] [wikitr:/Help/Action/ObjectHistory History Dialog], see [wikitr:/Help/Action/ObjectHistory#Basicinformationaboutaversion Basic information about version].
     37
     38 Coordinates:: The coordinates of the node. Only relevant for nodes and if the node was moved or deleted.
     39 Deleted State:: The state of the object, e.g. if it is still present or if it was deleted.
     40 Referenced by:: List of parents, e.g. ways with the node in their node list or relations which the object is a member of. ''This row just displays information''.
     41
     42As, in the example below, the values for "`Coordinates`" and "`Deleted State`" of the two object versions are different and the rows have a red background. On the left side the object has coordinates and is present (e.g. **`not deleted`**) while on the right side the object is **`deleted`** and therefore has no coordinates. You now have to decide which of these values you want to keep and which you want to discard.
     43
     44[[Image(propertie-resolve-1_v19207.png,60%,center)]]
     45
     46Select 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, [[JOSMImage(dialogs/conflict/tagkeepmine)]] or [[JOSMImage(dialogs/conflict/tagkeeptheir)]], you decide to keep the values and to discard the opposite values.
     47
     48[[Image(propertie-resolve-2_v19207.png,60%,center)]]
     49
     50The table in the middle now displays the values to keep and the background color turns green. Selected values in the middle table can be cleared again with the button below the table ([[JOSMImage(dialogs/conflict/tagundecide)]]).\\
     51Once all property conflicts are solved the green check mark ([[JOSMImage(misc/green_check,link=,top)]]) is displayed in front of the name of the tab and if there are no further conflicts in other tabs the button [[JOSMImage(dialogs/conflict)]] **Apply Resolution** is enabled you can apply your decision. The values you've chosen will be applied and the dialog will be closed.
     52
     53[[Image(propertie-resolve-3_v19207.png,60%,center)]]
     54
     55
     56== Resolving differences between tags ==#Resolvingdifferencesbetweentags
     57If the tags of one version of an objects are different from the tags of another version, the Conflict dialog shows a red square ([[JOSMImage(dialogs/conflict/mergeincomplete,link=,top)]]) in the tab **''Tags''** plus the amount of conflicting tags. Click on the tab to display a dialog for resolving tag conflicts.
    1158
    1259There are three tables displayed in this dialog, from left to right:
    13 * '''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.
    14 * '''Merged version''': shows  the merged tags. This table is initially empty. The more tag conflicts you resolve, the more tag values will we be displayed in this table.
    15 * '''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.
    16 
    17 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.
    18 
    19 [[Image(tag-resolve-1-commented.png)]]
    20 
    21 Click on the value you want to keep, in the example for instance on the value on the left. If you either double-click on the value or click on [[Image(source:trunk/images/dialogs/conflict/tagkeepmine.svg,middle)]], you decide to keep the value and to discard the opposite value. The table in the middle now displays the value to keep and the background color turns to green.
    22 
    23 
    24 [[Image(tag-resolve-2-commented.png)]]
    25 
    26 When the button '''Apply Resolution''' is enabled you can apply your decision. The values you've chosen will be applied and the dialog will be closed.
    27 
    28 [[Image(tag-resolve-3-commented.png)]]
    29 
    30 == Resolving differences in the node list of two versions of a way ==
    31 If you see the symbol [[Image(source:trunk/images/dialogs/conflict/mergeincomplete.svg,middle)]] in the tab '''Nodes''' then you have to resolve differences in the list of [wiki:Help/Concepts/Object nodes] of two [wiki:Help/Concepts/Object ways]. There are three columns in the respective panel (see screen shot below):
    32 * the leftmost table displays the list of nodes of the the local object version
    33 * the rightmost table displays the list of nodes of the the server object version
    34 * the table in the middle shows the list of nodes of the merged ways
    35 
    36 Initially, the middle table is empty. You should now decide which nodes to keep from the local dataset (the leftmost table) and which from the server dataset (the rightmost table).
    37 
    38 
    39 [[Image(node-resolve-main-commented.png)]]
     60* **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.
     61* **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.
     62* **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.
     63
     64In 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. \\
     65**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.
     66
     67=== Single tag conflicts ===
     68[[Image(one-tag-resolve-1_v19207.png,60%,center)]]
     69
     70Select the value you want to keep: \\
     71In 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, [[JOSMImage(dialogs/conflict/tagkeepmine)]] or [[JOSMImage(dialogs/conflict/tagkeeptheir)]], you decide to keep the value and to discard the opposite value. The table in the middle now displays the value to keep and the background color turns to green. Selected value in the middle table can be cleared again with the button below the table ([[JOSMImage(dialogs/conflict/tagundecide)]]).
     72
     73[[Image(one-tag-resolve-2_v19207.png,60%,center​)]]
     74
     75Once all tag conflicts are solved the green check mark ([[JOSMImage(misc/green_check,link=,top)]]) is displayed in front of the name of the tab and if there are no further conflicts in other tabs, the button [[JOSMImage(dialogs/conflict)]] **Apply Resolution** is enabled and you can apply your decision. The values you've chosen will be applied and the dialog will be closed.
     76
     77[[Image(one-tag-resolve-3-commented_v19207.png,60%,center)]]
     78
     79=== Multiple tags conflicts ===
     80[[Image(tags-resolve-1_v19207.png,60%,center)]]
     81
     82Select the values you want to keep: \\
     83In the example: If you double-click on a value, or you select more values by holding `Ctrl` or `Shift` and then click on the buttons between the tables, [[JOSMImage(dialogs/conflict/tagkeepmine)]] or [[JOSMImage(dialogs/conflict/tagkeeptheir)]], you decide to keep the values and 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 ([[JOSMImage(dialogs/conflict/tagundecide)]]).
     84
     85[[Image(tags-resolve-2-commented_v19207.png,60%,center)]]
     86
     87Once all tag conflicts are solved the green check mark ([[JOSMImage(misc/green_check,link=,top)]]) is displayed in front of the name of the tab and if there are no further conflicts in other tabs, the button [[JOSMImage(dialogs/conflict)]] **Apply Resolution** is enabled and you can apply your decision. The values you've chosen will be applied and the dialog will be closed.
     88
     89[[Image(tags-resolve-3-commented_v19207.png,60%,center)]]
     90
     91
     92== Resolving differences in the node/member list of two versions of a way/relation ==
     93Resolution methods are similar for both nodes and members.
     94
     95If you see a red square ([[JOSMImage(dialogs/conflict/mergeincomplete,top,link=)]]) in the tab ''**Nodes** respectively **Members**'' then you have to resolve differences in the list of [[JOSMImage(data/node,top,link=)]] [wikitr:/Help/Concepts/Object#Nodes nodes] of two [[JOSMImage(data/way)]] [wikitr:/Help/Concepts/Object#Ways ways] respectively the list of members of two [[JOSMImage(data/relation)]] [wikitr:/Help/Concepts/Object#relations relations]. There are three columns of tables in the respective panel (see screen shot below):
     96* the leftmost table displays the list of nodes/members of the local object version
     97* the rightmost table displays the list of nodes/members of the server object version
     98* the table in the middle shows the list of nodes/member of the merged way
     99
     100Initially, 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.
     101
     102* **Screen with nodes**
     103[[Image(node-resolve-main-commented_v19207.png,85%,center)]]
     104
     105* **Screen with members**
     106[[Image(member-resolve-main-commented_v19207.png,85%,center)]]
    40107
    41108=== The standard workflow ===
    42 The standard workflow to resolve conflicts in the node lists of two [wiki:Help/Concepts/Object object versions] consists of three steps:
    43 
    44 1. Pick nodes from either object version and reorder the resulting node list if necessary
    45 1. '''Freeze''' the resulting merged node list by clicking on the button [[Image(button-freeze.png,middle)]]. When you freeze the merged node list you tell JOSM that all conflicts in the node list are resolved.
    46 1. '''Apply the resolution'''
    47 
    48 
    49 === A simple workflow: Keep the node list from your local object version ===
    50 The following example shows the workflow when you decide to keep all nodes in the same order from your local object version.[[BR]]
    51 ''(Example is out of date (new buttons), but still works.)''
    52 
    53 First, select all elements in the leftmost table (either using the mouse or by pressing Ctrl+A in the table) (see next screen shot):
    54 
    55 [[Image(simple1-step-1.png)]]
    56 
    57 Then, click [[Image(source:trunk/images/dialogs/conflict/copystartleft.svg,middle)]] to copy the selected nodes to the middle table with the merged nodes:
    58 
    59 [[Image(simple1-step-2.png)]]
    60 
    61 Finally, click [[Image(button-freeze.png,middle)]] to freeze the resulting merged node list:
    62 
    63 [[Image(simple1-step-3.png)]]
    64 
    65 The symbol in the nodes tab now switched to [[Image(source:trunk/images/dialogs/valid.png,middle)]] and you can apply the merge decisions.
    66 
    67 === Support for comparing node lists ===
    68 It can be difficult to find the differences between the node list of of two object versions, in particular for ways with many nodes.
    69 
    70 The Conflict Dialog supports you in finding the differences. It can compare two of the node lists displayed ("my" node list, the merged node list, and "their" node list) and it can render the differences between them with specific background colors.
    71 
    72 From the following combo box you can select which pair of node lists to compare:
     109The standard workflow to resolve conflicts in the node/member lists of two object versions consists of three steps:
     110
     1111. Pick nodes/members from either object version and reorder the resulting node/member list if necessary
     1121. Freeze the resulting merged node/member list by clicking on the **Freeze** button ([[Image(button-freeze.png,link=,middle)]]). When you freeze the merged node/member list you tell JOSM that all conflicts in the node/member list are resolved.
     1131. [[JOSMImage(dialogs/conflict)]] **Apply Resolution**
     114
     115Depending on the position of a member/node in the list different background colors are used:
     116* [[Image(compare-in-one-list-only.png,link=,middle)]] - red - the member/node is in this list **only**. It isn't present in the opposite list.
     117* [[Image(compare-different-positions.png,link=,middle)]] - yellow - the member/node is in both lists, but it is on different positions
     118* [[Image(compare-in-both-lists.png,link=,middle)]] - green - a member/node is in both lists at the same position
     119* [[Image(selected.png,link=,middle)]] - blue - a member/node is selected
     120* [[Image(not-selected.png,link=,middle)]] - white - in the list (Merged version) a member/node is not selected
     121
     122=== A simple workflow: Keep the node/member list from your local object version ===
     123The following example shows the workflow when you decide to keep all nodes/members in the same order from your local object version. \\
     124**Note**: screenshots are for nodes, but the method is the same for members.
     125
     126First, select all elements in the leftmost table (either using the mouse or by pressing `Ctrl+A` in the table) (see next screen shot):
     127
     128[[Image(nodes-simple1-step-1_v19207.png,85%,center)]]
     129
     130Then, click on the top button right of the table ([[JOSMImage(dialogs/conflict/copystartleft)]]) to copy the selected nodes/members to the middle table with the merged nodes/members; You can reach the same result without selecting the nodes/members by clicking on the button on the back button right of the table ([[JOSMImage(dialogs/conflict/useallleft)]]).
     131
     132[[Image(nodes-simple1-step-2_v19207.png,85%,center)]]
     133
     134Finally, click **Freeze** ([[Image(button-freeze.png,link=,middle)]]) to freeze the resulting merged node/member list:
     135
     136[[Image(nodes-simple1-step-3_v19207.png,85%,center)]]
     137
     138The symbol in the nodes/members tab now switched to a green check mark ([[JOSMImage(misc/green_check,middle,link=)]]) and you can apply the merge decisions.
     139
     140=== A less simple workflow: Mix and Reorganise the list of nodes/members of the local version of the object and their version ===
     141**Note**: screenshots are for members, but the method is the same for nodes.
     142
     143==== Member/Node selection ====
     144Selecting members/nodes in the list ("My version" and "Their version") works as usual: `Shift+`click to select a range of members/nodes, hold `Ctrl+`click to select and unselect multiple members/nodes.
     145
     146[[Image(members-complex1-step-1_v19207.png,85%,center)]]
     147
     148When members/nodes are selected use the buttons to the right of the ‘My version’ list and to the left of the ‘Their version’ list to put them in the ‘Merged version’ list. The buttons on the two lists are symmetrical
     149
     150The buttons offer following actions:
     151
     152||= **Icon** =||= **Description** =||
     153||  [[JOSMImage(dialogs/conflict/copystartleft)]]  || Copy "my" selected elements to the start of the merged member/node list ||
     154||  [[JOSMImage(dialogs/conflict/copybeforecurrentleft)]]  || Copy "my" selected elements before the first selected elements in the merged member/node list ||
     155||  [[JOSMImage(dialogs/conflict/copyaftercurrentleft)]]  || Copy "my" selected elements after the first selected elements in the merged member/node list ||
     156||  [[JOSMImage(dialogs/conflict/copyendleft)]]  || Copy "my" selected elements to the end of the list of merged elements ||
     157||||
     158||  [[JOSMImage(dialogs/conflict/useallleft)]]  || Copy all "my" selected elements to the target ||
     159
     160Depending on the position of a member/node in the list "Merged version" different background colors are used:
     161* blue - a member/node is selected
     162* white - a member/node is not selected
     163
     164[[Image(members-complex1-step-2_v19207.png,90%,center)]]
     165
     166[[Image(members-complex1-step-3_v19207.png,90%,center)]]
     167
     168==== Reorder the resulting node/member list if necessary, in "Merged version" ====
     169When the members/nodes are in the "Merged version" you can move them using the buttons at the bottom of the list
     170
     171[[Image(members-complex1-step-4_v19207.png,90%,center)]]
     172
     173The buttons offer following actions:
     174
     175||= **Icon** =||= **Description** =||
     176||  [[JOSMImage(dialogs/conflict/moveup)]]  || Move up the selected entries by one position ||
     177||  [[JOSMImage(dialogs/conflict/movedown)]]  || Move down the selected entries by one position ||
     178||  [[JOSMImage(dialogs/conflict/remove)]]  || Remove the selected entries from the list of merged elements ||
     179
     180Finally, click **Freeze** ([[Image(button-freeze.png,link=,middle)]]) to freeze the resulting merged node/member list:
     181
     182[[Image(members-complex1-step-5_v19207.png,90%,center)]]
     183
     184The symbol in the nodes/members tab now switched to a green check mark ([[JOSMImage(misc/green_check,middle,link=)]]) and you can apply the merge decisions.
     185
     186=== Support for comparing node/member lists ===
     187It can be difficult to find the differences between the node/member list of two object versions, in particular for ways with many nodes respectively relations with many members.
     188
     189The 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.
     190
     191From the following combo box you can select which pair of lists to compare:
    73192
    74193[[Image(compare-options.png)]]
    75194
    76 * '''My with Their''': compares the leftmost table with the rightmost table in the Conflict Dialog
    77 * '''My with Merged''': compares the leftmost table with the middle table in the Conflict Dialog
    78 * '''Their with Merge''': compares the middle table with the rightmost table in the Conflict Dialog
    79 
    80 Depending on the position of a node in the list different background colors are used:
    81 * [[Image(compare-in-one-list-only.png,middle)]] - the node is in this list '''only'''. It isn't present in the opposite list.
    82 * [[Image(compare-different-positions.png,middle)]] - the node is in both lists, but it is on different positions
    83 * White background means that a node is in both lists at the same position.
     195* **My with Their**: compares the leftmost table with the rightmost table in the Conflict Dialog
     196* **My with Merged**: compares the leftmost table with the middle table in the Conflict Dialog
     197* **Their with Merge**: compares the middle table with the rightmost table in the Conflict Dialog
     198
    84199
    85200== Hints ==
    86 
    87201* Make sure you don't edit outside of the area you have downloaded in order to reduce the problem of conflicts
    88 * Resolve conflicts by opening the 'conflicts' panel, selecting the one of the listed conflicts and choosing whether to accept 'theirs' or 'mine'.
     202* Resolve conflicts by opening the [wikitr:/Help/Dialog/ConflictList Conflict Panel], selecting the one of the listed conflicts and choosing whether to accept ''theirs'' or ''mine''.
    89203
    90204----
    91 Back to [wiki:Help Main Help]
     205Back to [wikitr:/Help/Dialog/ConflictList Conflict Panel] \\
     206Back to [wikitr:/Help/Concepts/Conflict Conflict] \\
     207Back to [wikitr:/Help Main Help]