Go to the first, previous, next, last section, table of contents.
The @command{diff3} command compares three files and outputs descriptions
of their differences. Its arguments are as follows:
diff3 options... mine older yours
The files to compare are mine, older, and yours.
At most one of these three file names may be `-',
which tells @command{diff3} to read the standard input for that file.
An exit status of 0 means @command{diff3} was successful, 1 means some
conflicts were found, and 2 means trouble.
Below is a summary of all of the options that GNU @command{diff3}
accepts. Multiple single letter options (unless they take an argument)
can be combined into a single command line argument.
- @option{-a}
-
- @option{--text}
-
Treat all files as text and compare them line-by-line, even if they
do not appear to be text. See section Binary Files and Forcing Text Comparisons.
- @option{-A}
-
- @option{--show-all}
-
Incorporate all unmerged changes from older to yours into
mine, surrounding conflicts with bracket lines.
See section Marking Conflicts.
- @option{--diff-program=program}
-
Use the compatible comparison program program to compare files
instead of @command{diff}.
- @option{-e}
-
- @option{--ed}
-
Generate an @command{ed} script that incorporates all the changes from
older to yours into mine. See section Selecting Which Changes to Incorporate.
- @option{-E}
-
- @option{--show-overlap}
-
Like @option{-e}, except bracket lines from overlapping changes' first
and third files.
See section Marking Conflicts.
With @option{-E}, an overlapping change looks like this:
<<<<<<< mine
lines from mine
=======
lines from yours
>>>>>>> yours
- @option{--help}
-
Output a summary of usage and then exit.
- @option{-i}
-
Generate `w' and `q' commands at the end of the @command{ed}
script for System V compatibility. This option must be combined with
one of the @option{-AeExX3} options, and may not be combined with @option{-m}.
See section Saving the Changed File.
- @option{-L label}
-
- @option{--label=label}
-
Use the label label for the brackets output by the @option{-A},
@option{-E} and @option{-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.
- @option{-m}
-
- @option{--merge}
-
Apply the edit script to the first file and send the result to standard
output. Unlike piping the output from @command{diff3} to @command{ed}, this
works even for binary files and incomplete lines. @option{-A} is assumed
if no edit script option is specified. See section Generating the Merged Output Directly.
- @option{-T}
-
- @option{--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 Tab Stop Alignment.
- @option{-v}
-
- @option{--version}
-
Output version information and then exit.
- @option{-x}
-
- @option{--overlap-only}
-
Like @option{-e}, except output only the overlapping changes.
See section Selecting Which Changes to Incorporate.
- @option{-X}
-
Like @option{-E}, except output only the overlapping changes.
In other words, like @option{-x}, except bracket changes as in @option{-E}.
See section Marking Conflicts.
- @option{-3}
-
- @option{--easy-only}
-
Like @option{-e}, except output only the nonoverlapping changes.
See section Selecting Which Changes to Incorporate.
Go to the first, previous, next, last section, table of contents.