diff3

Show differences among three files.
When two people have made independent changes to a common original, 'diff3' can report the differences between the original and the two changed versions, and can produce a merged file that contains both persons' changes together with warnings about conflicts.
The files to compare are MYFILE, OLDFILE, and YOURFILE.
At most one of these three file names can be '-', which tells 'diff3' to read the standard input for that file.

Syntax
      diff3 [options] MYFILE OLDFILE YOURFILE

Options

   -a --text
         Treat all files as text and compare them line-by-line, even if they  do not appear to be text.

   -A --show-all
         Output all changes from OLDFILE to YOURFILE into MYFILE, surrounding all conflicts with bracket lines.

   -e --ed
         Output unmerged changes from OLDFILE to YOURFILE into MYFILE.

   -E --show-overlap
         Output unmerged changes from OLDFILE to YOURFILE into MYFILE, bracketing conflicts. 

   -x --overlap-only
         Output unmerged changes from OLDFILE to YOURFILE into MYFILE, output only overlapping changes.

   -X
         Output unmerged changes from OLDFILE to YOURFILE into MYFILE, output only overlapping changes, bracketing them.

   -3 --easy-only
         Output unmerged changes from OLDFILE to YOURFILE into MYFILE, Output only nonoverlapping changes. 

   -m --merge
         Output merged file instead of ed script (default -A).
         Unlike piping the output from 'diff3' to 'ed', this works even for binary files and incomplete lines.

   -L LABEL --label=LABEL
         Use LABEL instead of file name.
         Use the label LABEL for the brackets output by the '-A', '-E' and '-X' options.
         This option can 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'.

   -i
         Append 'w' and 'q' commands at the end of ed scripts.
         This option must be combined with one of the '-AeExX3' options, and can not be combined with '-m'.

   -T --initial-tab
         Output a tab rather than two spaces before the text of a line in normal format.

   --diff-program=PROGRAM
         Use PROGRAM to compare files.

   --strip-trailing-cr
         strip trailing carriage return on input.

   -v --version
         Output the version number of 'diff3'.

   --help
         Output this help.

'diff3' normally compares three input files line by line, finds groups of lines that differ, and reports each group of differing lines. Its output is designed to make it easy to inspect two different sets of changes to the same file.

If 'diff3' thinks that any of the files it is comparing is binary (a non-text file), it normally reports an error, because such comparisons are usually not useful. As with 'diff', you can force 'diff3' to consider all files to be text files and compare them line by line by using the '-a' or '--text' options.

Multiple single letter options (unless they take an argument) can be combined into a single command line argument.

An exit status of 0 means diff3 was successful, 1 means some conflicts were found, and 2 means trouble.

"One person can make a difference and every person must try" ~ John F. Kennedy

Related linux commands

cmp - Compare two files.
diff - Display the differences between two files.
sdiff - merge two files interactively.
Equivalent Windows commands: COMP / FC - Compare and display Characters/Lines which do not match.


 
Copyright © 1999-2024 SS64.com
Some rights reserved