Создайте патч, сравнив конкретную ветку на удаленном с определенной локальной веткой - PullRequest
42 голосов
/ 25 марта 2011

Я работал с git уже несколько недель, но теперь я хотел бы внести свой вклад в этот проект с открытым исходным кодом. Я объединил свою работу с последней, удаленной, вытащив редактирование конфликтов, и все это выглядит так, как должно быть в gitk. Теперь мне нужно создать патч против последней версии origin (master) master. Поэтому я подумал, что будет работать следующая команда:

git format-patch origin:master --stdout > 25032011.patch

но я получаю:

fatal: Invalid object name 'origin'.

Так что, очевидно, я неправильно понял команду. Итак, как бы мне создать патч, сравнивая конкретную ветку на удаленном с определенной локальной веткой?

Ответы [ 2 ]

71 голосов
/ 25 марта 2011

Используйте git format-patch origin/master.Это создает файл патча для каждого коммита в вашей извлеченной ветке, который не находится в origin / master.

Чтобы иметь один файл вместо нескольких файлов, вы можете использовать

git format-patch master --stdout > mypatch.patch
8 голосов
/ 02 июня 2017

Используйте это, чтобы создать один файл, содержащий все коммиты в вашей текущей ветке, которых нет в основной ветке:

git format-patch master --stdout > mypatch.patch
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...