Scroll to navigation

DIFF3(1) User Commands DIFF3(1)


diff3 - compare three files line by line




Compare three files line by line.

Mandatory arguments to long options are mandatory for short options too.

output all changes, bracketing conflicts
output ed script incorporating changes from OLDFILE to YOURFILE into MYFILE
like -e, but bracket conflicts
-3, --easy-only
like -e, but incorporate only nonoverlapping changes
like -e, but incorporate only overlapping changes
like -x, but bracket conflicts
append 'w' and 'q' commands to ed scripts
output actual merged file, according to -A if no other options are given
treat all files as text
strip trailing carriage return on input
make tabs line up by prepending a tab
use PROGRAM to compare files
use LABEL instead of file name (can be repeated up to three times)
display this help and exit
output version information and exit

The default output format is a somewhat human-readable representation of the changes.

The -e, -E, -x, -X (and corresponding long) options cause an ed script to be output instead of the default.

Finally, the -m (--merge) option causes diff3 to do the merge internally and output the actual merged file. For unusual input, this is more robust than using ed.

If a FILE is '-', read standard input. Exit status is 0 if successful, 1 if conflicts, 2 if trouble.


Written by Randy Smith.


Report bugs to:
GNU diffutils home page: <>
General help using GNU software: <>


Copyright © 2021 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.


cmp(1), diff(1), sdiff(1)

The full documentation for diff3 is maintained as a Texinfo manual. If the info and diff3 programs are properly installed at your site, the command

info diff3

should give you access to the complete manual.

August 2021 diffutils 3.8