На Linux есть какой-либо инструмент может сравнить 2 flolders и создать файл патча? - PullRequest
0 голосов
/ 03 декабря 2010

A, B, C файл в каталоге / opt / src

D, E, файл в dircory / opt / dest

сравните src и dest, выясните, следует ли добавить B, C к dest и удалить D, E и посмотреть, изменился ли A

и дать A бинарный патч или просто перезаписать его.

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

Я знаю, что написать некую программу для этого просто, но я не хочу изобретать колесо снова

Rsync, кажется, отвечает большинству моих потребностей, но не знает, как сделать патч.

Спасибо

Ответы [ 2 ]

6 голосов
/ 03 декабря 2010

старый способ: diff -uNr / opt / src / opt / dest> /tmp/src.patch

существуют программы, автоматизирующие процесс, например makepatch.

1 голос
/ 03 декабря 2010

Программа diff с опцией -r

diff [-c| -e| -f| -C n][-br] file1 file2

[...]

-r
  Apply diff recursively to files and directories
  of the same name when file1 and file2 are both
  directories.
...