git — Создание патча из незакомиченных изменений

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

Если изменения еще не закомичены, для создания патча и сохрания его в файл — можно воспользоваться следующей командой:

git diff > diff.patch
Code language: CSS (css)

где, diff.patch — имя файла

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

Если нужно создать git diff для новых файлов, можно воспользоваться следующим вариантом:

  • Подготовить все файлы для комита (командой git add). Но не комитить.
  • Выполнить git diff с параметром --cached
git add . git diff --cached > diff.patch
Code language: CSS (css)

Для добавления новых бинарных файлов в патч (например dll фалы) нужно выполнить следующие дейстрия:

  • Подготовить все файлы для комита (командой git add). Но не комитить.
  • Выполнить git diff с параметром --binary
git add . git diff --cached --binary > diff.patch
Code language: CSS (css)

Для применения патча воспользуемся командой git apply:

git apply diff.patch
Code language: CSS (css)

PS: Также может быть интересным:

Добавить комментарий Отменить ответ