Perform a three-way file merge. The effect is easiest to understand if file2 is considered the original version of a file, file3 an altered version of file2, and file1 a later altered version of file2.
After the merge, file1 contains both the changes from file2 to file1 and the changes from file2 to file3. In other words, file1 keeps its changes and incorporates the changes in file3 as well. merge does not change file2 or file3.
If a line from file2 was changed in different ways in both file1 and file3, merge recognizes a conflict. By default, the command outputs a warning and puts brackets around the conflict, with lines preceded by <<<<<<< and >>>>>>>. A typical conflict looks like this:
<<<<<<< file1 relevant lines from file1 = == == == relevant lines from file3 >>>>>>> file3
If there are conflicts, the user should edit the result and delete one of the alternatives.
Don’t warn about conflicts.
Send results to standard output instead of overwriting file1.
Quiet; do not warn about conflicts.
Output conflicts using the -A style of diff3. This merges all changes leading from file2 to file3 into file1 and generates the most verbose output.
Output conflict information in a less verbose style than -A; this is the default.
Specify up to three labels to be used in place of the corresponding filenames in conflict reports. That is:
generates output that looks as if it ...