Каков рекомендуемый способ получения последних обновлений из upstream eleventy-base-blog в мой разветвленный блог?
У меня есть блог, основанный на клоне eleventy-base-blog
репо. Когда я клонировал его, я оставил исходный код нетронутым вmaster
ветвь, и внес все свои настройки и изменения содержимого в свой собственный blog
ветвь (чтобы я мог легко начать с нуля, создав новую ветку из нетронутой master
, если я напутал).
Очевидно, что я настраиваю и вношу изменения в свою версию, и со временем она отличается от исходной версии, а также от моей локальной версии. master
ветвь.
Недавно я понял, что мне может не хватать важных исправлений ошибок, улучшений и новых функций из апстрима, поэтому я подумал, как я могу обновить свой форк, чтобы быть в курсе последних событий.
Ответ, который я нашел после долгих поисков и попыток получить ясность из всего диапазона советов ( 1, 2, 3), похоже, заключался в использованииgit rebase
, поэтому я попытался сделать:
git checkout master
git pull upstream master
git checkout blog
git rebase master
( это говорит о том, что я должен был сделатьfetch && reset --hard
вместо того pull
)
но это закончилось множеством конфликтов слияния, которые мне пришлось кропотливо преодолеть и исправить вручную. Казалось, что вся моя история коммитов нуждалась в еще одном раунде редактирования, за которым следовало
git rebase --continue
или что-то еще (см. сценарий № 1 здесь). Я действительно не хочу делать все это каждый раз, когда хочу получать обновления из основной ветки разработки. Я не понимал, что будет так много конфликтов.
Итак, что может быть лучше, если таковое имеется, для более плавного обновления до последней версии? eleventy-base-blog
, без необходимости вручную сохранять все мои собственные настройки и правки? Я чувствую, что что-то упускаю, и было бы хорошо знать, как это сделать лучше. Тогда я, возможно, смогу внести хорошую процедуру обновления, которая будет включена в документацию дляeleventy-base-blog
.