diff'ing diffs с diff? - PullRequest
       14

diff'ing diffs с diff?

21 голосов
/ 15 января 2010

Мне нужно знать, действительно ли два патча одинаковы.

У меня есть старый файл патча и новый файл патча, созданные с помощью команды unix diff. Простое изменение патчей сообщает о различиях из-за отметки времени, когда патч был создан.

Есть ли способ (с diff?), Который может достоверно сказать мне, являются ли два патча фактически одинаковыми?

Ответы [ 3 ]

29 голосов
/ 15 января 2010

Использовать interdiff из patchutils .

5 голосов
/ 15 января 2010

Вы можете применить оба исправления к копиям одного и того же исходного файла, а затем использовать diff нормально, чтобы проверить различия в результатах.

Патчи представляют изменения во входных файлах, поэтому два патча одинаковы, если они одинаково влияют на входные файлы. Различия в исправлениях напрямую отражаются в различиях результатов этих исправлений.

Любые различия между двумя исправлениями, которые не приводят к разнице в результате этих исправлений, не имеют значения.

0 голосов
/ 16 января 2010

Вы можете попробовать Beyond Compare .

Он может быть настроен на замену строк в одном или обоих файлах чем-то другим, что затем делается под обложками. Файлы на экране все еще выглядят так, как будто они существуют на диске, но различия зависят от обработанных файлов.

При этом вы можете настроить его так, чтобы весь текст в формате, таком как отметка времени, изменялся на что-то общее в обоих файлах, и тогда вы будете сравнивать только все остальное.

В клиенте Windows, чтобы изменить эти настройки, на панели инструментов есть кнопка с маленьким символом, который выглядит как человек, торс и голова, а в открывшемся диалоговом окне есть вкладка для замен. *

...