The command M-x diff compares two files, displaying the
differences in an Emacs buffer named `*Diff*'. It works by running
diff program, using options taken from the variable
diff-switches, whose value should be a string.
The buffer `*Diff*' has Compilation mode as its major mode, so you can use C-x ` to visit successive changed locations in the two source files. You can also move to a particular hunk of changes and type RET or C-c C-c, or click Mouse-2 on it, to move to the corresponding source location. You can also use the other special commands of Compilation mode: SPC and DEL for scrolling, and M-p and M-n for cursor motion. See section Running Compilations under Emacs.
The command M-x diff-backup compares a specified file with its most
recent backup. If you specify the name of a backup file,
diff-backup compares it with the source file that it is a backup
The command M-x compare-windows compares the text in the current window with that in the next window. Comparison starts at point in each window, and each starting position is pushed on the mark ring in its respective buffer. Then point moves forward in each window, a character at a time, until a mismatch between the two windows is reached. Then the command is finished. For more information about windows in Emacs, section Multiple Windows.
With a numeric argument,
compare-windows ignores changes in
whitespace. If the variable
nil, it ignores differences in case as well.
See also section Merging Files with Emerge, for convenient facilities for merging two similar files.