Ситуация: у меня есть три XML-файла:
Базовый файл A, файл B на основе A с изменениями в нем и целевой файл C на основе A с множеством изменений, включенных в него, включая файл B.
Например:
А (база):
aaa
bbb
ccc
B (изменения):
aaa
bbb
XXX
ccc
C (цель):
aaa
YYY
bbb
ZZZ
XXX
ccc
Теперь я хочу «удалить» файл изменений B, введенный в файл C, поэтому в этом примере строка XXX удалена.
У меня нет полного контроля над изменениями в C, поэтому я не смогу отслеживать каждое изменение с помощью git-репозитория или чего-то подобного.
Один из способов, который я могу придумать, - сравнить файлы A и B, записать каждую строку, измененную в B, и удалить их из C - но это не сработало бы, если B удалило строки из A, и я тоже не не знаю, есть ли другие сложности с этим подходом.
Вопрос: Каким будет правильный процесс (инструмент, библиотека или алгоритм) для достижения этой цели?