Node:
Detailed diff3 Normal,
Next:
diff3 Hunks,
Previous:
Sample diff3 Input,
Up:
Comparing Three Files
Detailed Description of diff3
Normal Format
Each hunk begins with a line marked ====
. Three-way hunks have
plain ====
lines, and two-way hunks have 1
, 2
, or
3
appended to specify which of the three input files differ in
that hunk. The hunks contain copies of two or three sets of input
lines each preceded by one or two commands identifying where the lines
came from.
Normally, two spaces precede each copy of an input line to distinguish
it from the commands. But with the -T
or --initial-tab
option, diff3
uses a tab instead of two spaces; this lines up
tabs correctly. See Tabs, for more information.
Commands take the following forms:
file:la
- This hunk appears after line l of file file, and
contains no lines in that file. To edit this file to yield the other
files, one must append hunk lines taken from the other files. For
example,
1:11a
means that the hunk follows line 11 in the first
file and contains no lines from that file.
file:rc
- This hunk contains the lines in the range r of file file.
The range r is a comma-separated pair of line numbers, or just one
number if the range is a singleton. To edit this file to yield the
other files, one must change the specified lines to be the lines taken
from the other files. For example,
2:11,13c
means that the hunk
contains lines 11 through 13 from the second file.
If the last line in a set of input lines is incomplete
(see Incomplete Lines), it is distinguished on output from a full
line by a following line that starts with \
.