Я ищу магическую команду создания патча из последнего сделанного коммита.
Мой рабочий процесс иногда выглядит так
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
?
Ответы:
В основном,
(проверьте справку для многих вариантов), хотя это действительно для их рассылки. Для одного коммита просто
даст вам полезный патч.
источник
git diff > change.patch
. Вы также можете включить диапазон ревизий, и это позволит вам создавать патчи для незафиксированных изменений. Большая разница, однако, заключается в том, что он не будет включать различия в двоичных файлах . См. Ответ на вопрос «В чем разница между« git format-patch »и« git diff »? для более подробной информации.git format-patch -1
илиgit format-patch -n HEAD^
должно работать.Используя ответ @Useless, вы также можете использовать общую форму без параметров для последнего коммита и поместить ее в файл с:
Или, чтобы быть чище для пользователей Windows, когда нужно избегать карет, удваивая их:
источник
git format-patch HEAD~1
. Я думаю, что в Windows все становится менее запутанным.иначе, если у вас есть идентификатор фиксации этого конкретного коммита, вы можете использовать,
источник
Вам нужна
-p
опция для git log:источник
Делает работу за меня.
источник