The
diff3 command compares three files and outputs descriptions
of their differences.
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.
Options 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.
-a
Treat all files as text and compare them line-by-line, even if they
do not appear to be text.
-A
Incorporate all changes from
older to
yours into
mine , surrounding all conflicts with bracket lines.
-B
Old behavior of -A. Shows non-conflicts.
-e
Generate an
ed script that incorporates all the changes from
older to
yours into
mine .
-E
Like
-e , except bracket lines from overlapping changes' first
and third files.
With
-e , an overlapping change looks like this:
<<<<<<< mine
lines from mine
=======
lines from yours
>>>>>>> yours
--ed
Generate an
ed script that incorporates all the changes from
older to
yours into
mine .
--easy-only
Like
-e , except output only the nonoverlapping changes.
-i
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 .
--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.
-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 .
-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.
--overlap-only
Like
-e , except output only the overlapping changes.
--show-all
Incorporate all unmerged changes from
older to
yours into
mine , surrounding all overlapping changes with bracket lines.
--show-overlap
Like
-e , except bracket lines from overlapping changes' first
and third files.
-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.
--text
Treat all files as text and compare them line-by-line, even if they
do not appear to be text.
-v
--version
Output the version number of
diff3 .
-x
Like
-e , except output only the overlapping changes.
-X
Like
-E , except output only the overlapping changes.
In other words, like
-x , except bracket changes as in
-E .
-3
Like
-e , except output only the nonoverlapping changes.