The scenarios for comparison of content blocks during the three-way merge process are described in Content block comparison use cases table. In this table, X, Y, and Z represent the content blocks, one from each of the three files.
Scenario |
Content block comparison |
Result |
---|---|---|
XYY
|
The following content blocks are picked up:
|
Result: Y Since the <file_name>.local version and the <file_name> version of the content blocks match, the Y version is picked. |
XYX
|
The following content blocks are picked up:
|
Result : Y This is the case where the file modified by you (Y) is preserved and is written to new_local. |
X Y Z
|
The following blocks sections are picked up:
|
Result: Conflict All three content blocks will be written into a .conflict file. |
During this process, modifications done on each of the files in the old installation are merged into the new installation. The utility identifies the files to be copied and copies them into a predefined new directory in the new installation with an appropriate suffix.
The utility performs the following functions:
-
Automated analysis of the differences between any two files (for example, File A and File B), while also considering the parent file.
-
Incorporates the changes done to the parent file in File A and File B, and automatically merges the two changes. This type of merge is used in revision control systems.
-
It maintains a record of the conflicts encountered during the merge process in a .conflict file.
In case the utility is unable to merge the files due to some conflict, it creates a .conflict file for each file. The .conflict file provides details of the files which were not completely merged by the three-way utility. Each conflicting instance is recorded in the .conflict file. You can review the .conflict files to spot the conflicts, and manually resolve the differences.