Создайте патч, сравнив конкретную ветку на удаленном компьютере с конкретной локальной ветвью
Я работаю с git в течение нескольких недель, но теперь я хотел бы внести свой вклад в этот проект с открытым исходным кодом. Я объединил свою работу с последним, удаленным, потянув за редактирование конфликтов, и все выглядит так, как должно быть в gitk. Теперь мне нужно создать патч, который против последней версии исходного (удаленного) мастера.
Поэтому я подумал, что следующая команда будет работать:
git format-patch origin:master --stdout > 25032011.patch
но я получаю:
fatal: Invalid object name 'origin'.
Итак, я явно ошибался. Итак, как мне создать патч, сравнив конкретную ветку на удаленном компьютере с конкретной локальной ветвью?
Ответы
Ответ 1
Используйте git format-patch origin/master
. Это создает файл исправления для каждой фиксации на вашей проверенной ветке, которая не находится в начале/главном.
Чтобы иметь один файл вместо нескольких файлов, вы можете использовать
git format-patch master --stdout > mypatch.patch
Ответ 2
Используйте это, чтобы создать один файл, содержащий все фиксации в текущей ветке, которые не находятся в главной ветке:
git format-patch master --stdout > mypatch.patch