Стратегия разрешения конфликтов при сильном расхождении master и feature-ветки
У меня есть старая feature-ветка, которая была создана от master давно.
За это время master сильно ушёл вперёд - появилась новая интеграция с другим сервисом,
много изменений. Мне нужно обновить мою ветку до актуального состояния master. Как это правильно сделать?
Ответы (1 шт):
Думаю, основной функционал оставить, тут хорошо подошло бы сравнение по строкам, а всё, что вы не делали, принять из master ветки.
"Таблетки от всего" тут не будет. Если вы раньше решали merge conflicts, думаю, понимаете как это работает. Стратегия - оставить вашу фичу и принять изменения другой ветки. Если различий слишком много, то тут и обычная интеграция старый-новый код будет сложная.
Один из вариантов - вынести вашу фичу в отдельный файл с приставкой _Temp или что-то в том роде. Дальше в режиме обычного кодинга интегрировать старое в новое (или наоборот).
Не уверен, что при 100500 конфликтов, у вас получится это сделать в режиме git-diff, поскольку вам нужно не только отсутствие синтаксических ошибок, а ещё и полность работающий функционал.
Второй вопрос, как так вышло, что ваша фича вызывает merge-conflict? Значит, она уже была кем-то сделана и закинута в master, либо у вас есть проблемы с таск-менеджментом, посколько одна фича требует глобальных изменений в проекте, что напрямую влияет на другой функционал