Я хочу смочь сделать слияние с 3 путями документов XHTML:
Примечание:
diff3
который реализует слияние с 3 путями плоского текстаИнструменты, которые я нашел, включают:
Первое из вышеупомянутого (т.е. "3DM") говорит явно, что реализует слияния с 3 путями.
Я не знаю о других двух: эквивалентна ли "разность", сопровождаемая "патчем", слиянию с 3 путями, или вместо этого может ли "патч" только повторно применить разность к исходному файлу (а не к одной трети, измененной копии файла)
Можно ли рекомендовать некоторое программное обеспечение (из списка выше, или в другом месте) с этой целью, и/или описание алгоритма слияния?
Править: Соответствие, diffing и слияние XML являются другой статьей с 2008, которая включает краткий обзор различных алгоритмов и ссылок на различные реализации.
Редактирование № 2: автор подтвердил, что Базовый Инструмент Разности и Патча XML Fuego может только patche исходный файл и не реализует слияние с 3 путями.
Могу добавить в вашу коллекцию DeltaXML - они не претендуют на diff3, но заслуживают внимания.
Боюсь, у меня нет бесплатного решения, но Project: Merge — это дешевый инструмент для сравнения и слияния XML, которым можно управлять из командной строки. . Вероятно, он может подключиться прямо к вашему приложению.