# man > diff3(1)

---
type: CommandReference
command: diff3
mode: man
section: 1
source: man-pages
---

## Quick Reference

- `diff3 {{path/to/file1}} {{path/to/file2}} {{path/to/file3}}` — Compare three files.
- `diff3 -A {{path/to/file1}} {{path/to/file2}} {{path/to/file3}}` — Show all changes, outlining conflicts.

## Name

diff3 - compare three files line by line

## Synopsis

`diff3 [OPTION]... MYFILE OLDFILE YOURFILE`

## Options

- `-A, --show-all` — output all changes, bracketing conflicts
- `-e, --ed` — output ed script incorporating changes from OLDFILE to YOURFILE into MYFILE
- `-E, --show-overlap` — like `-e`, but bracket conflicts
- `-3, --easy-only` — like `-e`, but incorporate only nonoverlapping changes
- `-x, --overlap-only` — like `-e`, but incorporate only overlapping changes
- `-m, --merge` — output actual merged file, according to `-A` if no other options are given
- `-a, --text` — treat all files as text
- `--strip-trailing-cr` — strip trailing carriage return on input
- `-T, --initial-tab` — make tabs line up by prepending a tab
- `--diff-program=PROGRAM` — use PROGRAM to compare files
- `-L, --label=LABEL` — use LABEL instead of file name (can be repeated up to three times)
- `--help` — display this help and exit
- `-v, --version` — output version information and exit

The default output format is a human-readable representation of the changes. The `-e`, `-E`, `-x`, `-X` options (and corresponding long) cause an ed script to be output instead. The `-m` (`--merge`) option causes diff3 to perform the merge internally and output the actual merged file.

## Examples

shell
diff3 file1.txt file2.txt file3.txt
diff3 -A file1.txt file2.txt file3.txt
## See Also

- [cmp(1)](https://www.chedong.com/phpMan.php/man/cmp/1/markdown)
- [diff(1)](https://www.chedong.com/phpMan.php/man/diff/1/markdown)
- [sdiff(1)](https://www.chedong.com/phpMan.php/man/sdiff/1/markdown)

## Exit Codes

- `0` — successful
- `1` — conflicts found
- `2` — trouble