(diff.info) Marking Conflicts
Info Catalog
(diff.info) Which Changes
(diff.info) diff3 Merging
(diff.info) Bypassing ed
Marking Conflicts
=================
`diff3' can mark conflicts in the merged output by bracketing them
with special marker lines. A conflict that comes from two files A and
B is marked as follows:
<<<<<<< A
lines from A
=======
lines from B
>>>>>>> B
A conflict that comes from three files A, B and C is marked as
follows:
<<<<<<< A
lines from A
||||||| B
lines from B
=======
lines from C
>>>>>>> C
The `-A' or `--show-all' option acts like the `-e' option, except
that it brackets conflicts, and it outputs all changes from OLDER to
YOURS, not just the unmerged changes. Thus, given the sample input
files ( Sample diff3 Input), `diff3 -A lao tzu tao' puts
brackets around the conflict where only `tzu' differs:
<<<<<<< tzu
=======
The Way that can be told of is not the eternal Way;
The name that can be named is not the eternal name.
>>>>>>> tao
And it outputs the three-way conflict as follows:
<<<<<<< lao
||||||| tzu
They both may be called deep and profound.
Deeper and more profound,
The door of all subtleties!
=======
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
>>>>>>> tao
The `-E' or `--show-overlap' option outputs less information than
the `-A' or `--show-all' option, because it outputs only unmerged
changes, and it never outputs the contents of the second file. Thus
the `-E' option acts like the `-e' option, except that it brackets the
first and third files from three-way overlapping changes. Similarly,
`-X' acts like `-x', except it brackets all its (necessarily
overlapping) changes. For example, for the three-way overlapping
change above, the `-E' and `-X' options output the following:
<<<<<<< lao
=======
-- The Way of Lao-Tzu, tr. Wing-tsit Chan
>>>>>>> tao
If you are comparing files that have meaningless or uninformative
names, you can use the `-L LABEL' or `--label=LABEL' option to show
alternate names in the `<<<<<<<', `|||||||' and `>>>>>>>' brackets.
This option can be given up to three times, once for each input file.
Thus `diff3 -A -L X -L Y -L Z A B C' acts like `diff3 -A 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'.
Info Catalog
(diff.info) Which Changes
(diff.info) diff3 Merging
(diff.info) Bypassing ed
automatically generated byinfo2html