The diff3 command compares three files and outputs descriptions
of their differences. Its arguments are as follows:
diff3 options... mineolderyours
The files to compare are mine, older, and yours.
At most one of these three file names may be `-',
which tells diff3 to read the standard input for that file.
An exit status of 0 means diff3 was successful, 1 means some
conflicts were found, and 2 means trouble.
Below is a summary of all of the options that GNU diff3
accepts. Multiple single letter options (unless they take an argument)
can be combined into a single command line argument.
Like `-e', except bracket lines from overlapping changes' first
and third files.
See section Marking Conflicts.
With `-e', an overlapping change looks like this:
<<<<<<< mine
lines from mine
=======
lines from yours
>>>>>>> yours
Generate `w' and `q' commands at the end of the ed
script for System V compatibility. This option must be combined with
one of the `-AeExX3' options, and may not be combined with `-m'.
See section Saving the Changed File.
`--initial-tab'
Output a tab rather than two spaces before the text of a line in normal format.
This causes the alignment of tabs in the line to look normal. See section Preserving Tabstop Alignment.
`-L label'
`--label=label'
Use the label label for the brackets output by the `-A',
`-E' and `-X' options. This option may be given up to three
times, one for each input file. The default labels are the names of
the input files. Thus `diff3 -L X -L Y -L Z -m A B C' acts like
`diff3 -m A B C', except that the output looks like it came from
files named `X', `Y' and `Z' rather than from files
named `A', `B' and `C'. See section Marking Conflicts.
`-m'
`--merge'
Apply the edit script to the first file and send the result to standard
output. Unlike piping the output from diff3 to ed, this
works even for binary files and incomplete lines. `-A' is assumed
if no edit script option is specified. See section Generating the Merged Output Directly.
Incorporate all unmerged changes from older to yours into
mine, surrounding all overlapping changes with bracket lines.
See section Marking Conflicts.
`--show-overlap'
Like `-e', except bracket lines from overlapping changes' first
and third files.
See section Marking Conflicts.
`-T'
Output a tab rather than two spaces before the text of a line in normal format.
This causes the alignment of tabs in the line to look normal. See section Preserving Tabstop Alignment.