ediff

Homepage: https://www.gnu.org/software/emacs

Author: Michael Kifer

Summary

A comprehensive visual interface to diff & patch

Commentary

Never read that diff output again!
Apply patch interactively!
Merge with ease!

This package provides a convenient way of simultaneous browsing through
the differences between a pair (or a triple) of files or buffers.  The
files being compared, file-A, file-B, and file-C (if applicable) are
shown in separate windows (side by side, one above the another, or in
separate frames), and the differences are highlighted as you step
through them.  You can also copy difference regions from one buffer to
another (and recover old differences if you change your mind).

Ediff also supports merging operations on files and buffers, including
merging using ancestor versions.  Both comparison and merging operations can
be performed on directories, i.e., by pairwise comparison of files in those
directories.

In addition, Ediff can apply a patch to a file and then let you step
though both files, the patched and the original one, simultaneously,
difference-by-difference.  You can even apply a patch right out of a
mail buffer, i.e., patches received by mail don't even have to be saved.
Since Ediff lets you copy differences between buffers, you can, in
effect, apply patches selectively (i.e., you can copy a difference
region from file_orig to file, thereby undoing any particular patch that
you don't like).

Ediff is aware of version control, which lets the user compare
files with their older versions.  Ediff can also work with remote and
compressed files.  Details are given below.

Finally, Ediff supports directory-level comparison, merging and patching.
See the Ediff manual for details.

This package builds upon the ideas borrowed from emerge.el and several
Ediff's functions are adaptations from emerge.el.  Much of the functionality
Ediff provides is also influenced by emerge.el.

The present version of Ediff supersedes Emerge.  It provides a superior user
interface and has numerous major features not found in Emerge.  In
particular, it can do patching, and 2-way and 3-way file comparison,
merging, and directory operations.

Dependencies

Reverse dependencies