MERGE(1)
КОМАНДЫ ПОЛЬЗОВАТЕЛЯ

НАЗВАНИЕ
merge - объединение изменений, сделанных в двух версиях одного файла в системе отслеживания версий RCS

СИНТАКСИС


    merge [флаги] имя-файла1 имя-файла2 имя-файла3

ОПИСАНИЕ
Команда merge совершает с первым файлом те же изменения, которые были сделаны со вторым, чтобы получить третий. Результат записывается в первый файл и в этом единственное отсутствие симметрии между первым и третьим файлами. О деталях см. флаг -j команды co .

Проблемы начинаются, когда изменения относительно второго файла были сделаны в одних и тех же строках первого и третьего файлов. Команда merge выдаст об этом предупреждение в канал выдачи ошибок, и пометит место, которое не могло быть обработано автоматически линиями вида <<<<<<< и >>>>>>>. Типичное сообщение выглядит так:


          <<<<<<< имя-файла1

          строки первого файла

          =======

          строки третьего файла

          >>>>>>> имя-файла3

Пользователю предлагается отредактировать результат вручную, как правило удалить лишнее.

ФЛАГИ
-A Если команда diff3(1) на вашем компьютере поддерживает флаг -A , то сообщения выдаются именно в этом стиле. В итоге, применение изменений ведущих от первой версии ко второй, к рабочему файлу, порождая при этом самую подробную информацию. Утилита diff3 из соответствующего пакета GNU этот флаг поддерживает, поэтому имеет смысл указать при построении RCS на вашем компьютере, что используется именно эта версия утилиты.
-E, -e Эти флаги задают стиль сообщений о наложении изменений, менее подробный, чем -A. См. diff3(1) . По умолчанию используется -E. Флаг -e не порождает никаких предупреждений.
-L label Флаг может быть использован до трех раз и задает имя, которое будет использовано в сообщениях, вместо соответствующего имени файла. Так команда

        merge -L x -L y -L z a b c

generates output that looks like it came from files x, y and z instead of from files a, b and c.
-p[rev] Результат записывается не в рабочий файл, а в стандартный вывод.
-q[rev] Все сообщения подавляются. Используется в фоновом режиме.
-V Посылает номер версии RCS на стандартный вывод.

СООБЩЕНИЯ
Возвращает операционной системе 0 если нет накладок, 1 если есть небольшие проблемы, с которыми программа справляется по ее мнению, и 2 если накладки слишком серьезны для работы.

СМ. ТАКЖЕ
diff3(1), diff(1), rcsmerge(1), co(1).

Walter F. Tichy, RCS--A System for Version Control, Software--Practice & Experience 15, 7 (July 1985), 637-654.

Copyright (C) Walter F. Tichy, Paul Eggert.

ПРОБЛЕМЫ
Программа работает и с двоичными файлами, но результат работы не всегда осмыслен.