Из руководств git-format-patch подготавливает исправления, подходящие для отправки по электронной почте, а git-diff показывает изменения.
Это две разные вещи и имеют разные цели, они просто выводят формат патча. Но git-format-patch
добавляет данные о фиксации (дата, автор, сообщение фиксации) и объединяет их в формат, подходящий для отправки в качестве почтового сообщения Unix (хотя это просто файлы, поэтому их можно отправлять другим методам и по-прежнему применять с помощью git-am).
Также git-format-patch
генерирует файл исправления для каждой фиксации в указанном вами диапазоне. Эти изменения будут добавлены в ваш репозиторий как коммиты с расширением git-am
.
git-diff
просто показывает разницу между двумя состояниями, которые вы запрашиваете, и может использоваться для создания файла исправления. Но это обычный файл исправления, и его применение просто изменит состояние рабочего каталога.
И да, таким образом вы можете создать патч для своего индекса.