Разница между патчем и diff файлами - PullRequest
25 голосов
/ 18 ноября 2010

Может кто-нибудь объяснить мне разницу между файлом .diff и файлом .patch .

Ответы [ 3 ]

19 голосов
/ 18 ноября 2010

Важным является содержимое файла, а не его расширение. Оба этих расширения подразумевают, что какая-то утилита diff (diff, git diff, git format-patch, svn diff) выдает результат.

Многие утилиты diff выдают результат, который может быть применен командой patch. Вам часто нужно будет использовать опции -d и -p для patch, чтобы правильно совмещать пути (префикс полосы, имя целевого каталога). Если вы видите одно из этих расширений в файле, распространяемом в Интернете, это почти наверняка свидетельствует о его совместимости с patch.

Вывод diff в Git совместим с патчем, но я считаю, что svn - нет. Конечно, простые патчи, сгенерированные git diff, вероятно, лучше всего применять с помощью git apply, а патчи, сгенерированные с помощью git format-patch, предназначены для использования с git-am.

6 голосов
/ 21 марта 2012

patch - это унифицированный diff (-u), если вы делаете: diff -u oldfile newfile, с помощью командной строки патча вы можете применить различия к старому файлу, чтобы стать новым файлом где-то еще.

5 голосов
/ 18 ноября 2010

Различий нет.Утилита diff создает файл патча, который применяется с использованием patch.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...