Ребаз на ветке github - PullRequest
       22

Ребаз на ветке github

14 голосов
/ 03 сентября 2011

Скажите, что я делаю следующие шаги:

  • Разветвите какой-нибудь проект, создайте ветку темы
  • нажмите эту ветку на GitHub
  • запросить извлечение из этой ветки в исходный проект

Тем не менее, я получаю некоторые комментарии по улучшению материала в коде.

  • Я исправляю код, делаю коммит
  • Перебазировать, чтобы раздавить старые коммиты

Проблема в том, что я больше не могу перенести это в ветку тем на GitHub

Какой лучший способ справиться с этим тогда?

1 Ответ

16 голосов
/ 03 сентября 2011

После перебазирования вы не можете просто добавить новые коммиты на разветвленный репо (так как вы переиграли эти коммиты во время перебазирования, переписав их SHA1), вы должны форсировать свой толчок:

git push -f

А затем повторите запрос на получение ответа.

Это нормально, так как никто еще не клонировал ваше хранилище и не начал использовать вашу ветку.

Если эта ветвь уже использовалась, следуйте этому сообщению в блоге :

Важное замечание: Если вы уже выдвинули коммиты на GitHub, а затем раздавили их локально, вы не сможете снова переместить эту же ветку на GitHub.
Создайте новую ветку - например, 100-retweet-bug-squashed или 100-retweet-bug-rc1 (для кандидата на релиз 1) - и раздавите там свои коммиты.
Как только все будет сжато и готово, переместите новую сжатую ветвь на GitHub и отправьте свой запрос на извлечение Gina.

...