Как мне просто создать патч из моего последнего коммита git? - PullRequest
178 голосов
/ 22 февраля 2012

Я ищу волшебную команду создания патча из последнего сделанного коммита.

Мой рабочий процесс иногда выглядит так

vi some.txt
git add some.txt
git commit -m "some change"

и теперь я просто хочу написать

git create-patch-from-last-commit-to-file SOME-PATCH0001.patch

но что мне поставить вместо create-patch-from-last-commit-to-file?

Ответы [ 5 ]

284 голосов
/ 22 февраля 2012

В общем,

git format-patch -n HEAD^

(проверьте справку для многих опций), хотя это действительно для их отправки по почте.Для одного коммита просто

git show HEAD > some-patch0001.patch

даст вам полезный патч.

53 голосов
/ 21 января 2013

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

git format-patch HEAD^ --stdout > patchfile.patch

Или быть чище для пользователей Windows, когда каретки имеютчтобы избежать удвоения их:

git format-patch HEAD~1 --stdout > patchfile.patch
29 голосов
/ 18 ноября 2013

другим способом, если есть идентификатор фиксации этого конкретного коммита, Вы можете использовать,

git format-patch -1 {commit-id}
9 голосов
/ 22 февраля 2012

Вам нужен параметр -p для входа в журнал:

git log -1 -p --pretty='%b'
4 голосов
/ 19 сентября 2017
git format-patch -1

Делает работу за меня.

...