MERGE(1)

NAME
merge - three-way file merge

SYNOPSIS
merge [ -L label1 [ -L label3 ] ] [ -p ] [ -q ] file1 file2 file3

DESCRIPTION
merge incorporates all changes that lead from file2 to file3 into file1. The result goes to standard output if -p is present, into file1 otherwise. merge is useful for combining separate changes to an original. Suppose file2 is the original, and both file1 and file3 are modifications of file2. Then merge combines both changes.

An overlap occurs if both file1 and file3 have changes in a common segment of lines. On a few older hosts where diff3 does not support the -E option, merge does not detect overlaps, and merely supplies the changed lines from file3. On most hosts, if overlaps occur, merge outputs a message (unless the -q option is given), and includes both alternatives in the result. The alternatives are delimited as follows:

    <<<<<<< file1
    lines in file1
    =======
    lines in file3
    >>>>>>> file3

If there are overlaps, the user should edit the result and delete one of the alternatives. If the -L label1 and -L label3 options are given, the labels are output in place of the names file1 and file3 in overlap reports.

DIAGNOSTICS
Exit status is 0 for no overlaps, 1 for some overlaps, 2 for trouble.

IDENTIFICATION
Author: Walter F. Tichy.
Revision Number: ; Release Date: .
Copyright © 1982, 1988, 1989 by Walter F. Tichy.
Copyright © 1990, 1991 by Paul Eggert.

SEE ALSO
diff3(1), diff(1), rcsmerge(1), co(1).