Diff3 - Diff3
| Разработчики) | AT&T Bell Laboratories |
|---|---|
| изначальный выпуск | Январь 1979 г. |
| Операционная система | Unix и Unix-подобный |
| Тип | Команда |
diff3 это Unix утилита для сравнения трех файлов и отображения различий между ними. diff3 также может слияние файлы, реализующие трехстороннее слияние.
История и внедрения
Эта секция отсутствует информация об алгоритме и сходстве с diff. (Июнь 2020 г.) |
diff3 первоначально появился в Версия 7 Unix 1979 г. Очень похожая версия была найдена в Распространение программного обеспечения Беркли (BSD) и был унаследован от OpenBSD и, вероятно, Солярис.[1][2]
В большинстве современных Unix-подобных систем, даже на основе BSD, таких как FreeBSD и NetBSD, предоставляемый diff3 является GNU версия в diffutils (ранее Инструменты GNU). В этой версии есть возможность объединять файлы самостоятельно, не полагаясь на ред. Он внутренне вызывает разница для сравнения, но также можно использовать любой другой совместимый инструмент.[3]
«Diff3» также стало общим названием для алгоритма трехстороннего слияния, в частности алгоритма, основанного на согласовании двух различных различий, происходящих из первого источника.
Слияние от общего предка
Когда два человека внесли изменения в копии одного и того же файла, diff3 может создать объединенный вывод, содержащий оба набора изменений вместе с предупреждениями о конфликтах. diff3 может объединять три или более набора изменений в файл, объединяя два набора изменений за раз.
diff3 может включать изменения двух модифицированных версий в общую предыдущую версию. Это позволяет пользователям объединять наборы изменений, представленные двумя более новыми файлами. Это можно включить с помощью такой команды: diff3 мой старше твоего.
Это похоже на вычитание файла старшая из файла твой и добавляем результат в файл мой, или как слияние с мой изменения, которые повернутся старшая в твой. Это слияние четко определено, пока мой и старшая совпадение в окрестности каждого такого изменения. Это неверно, если все три входных файла различаются или только старшая отличается; это конфликт. Когда все три входных файла различаются, конфликт является наложением.
В diff3 есть несколько методов для обработки совпадений и конфликтов. Он может опускать перекрытия или конфликты, выбирать только перекрытия или отмечать конфликты специальными <<<<<<< и >>>>>>> линий.
diff3 может выводить слияние результаты как ред сценарий, который можно применить к первому файлу, чтобы получить объединенный результат. Однако прямое создание объединенного вывода позволяет обойти некоторые проблемы с ed.
Рекомендации
- ^ – OpenBSD Общие команды Руководство
- ^ "diff3 - страница руководства раздел 1: Пользовательские команды". Документация по Solaris 11.3.
- ^ – Linux Общие команды Руководство
Смотрите также
внешняя ссылка
- Формальное расследование Diff3
- Руководство по GNU diffutils, «Сравнение трех файлов» и «Слияние от общего предка»