Стратегия разрешения конфликтов при сильном расхождении master и feature-ветки

У меня есть старая feature-ветка, которая была создана от master давно. За это время master сильно ушёл вперёд - появилась новая интеграция с другим сервисом, много изменений. Мне нужно обновить мою ветку до актуального состояния master. Как это правильно сделать?


Ответы (1 шт):

Автор решения: Faraday

Думаю, основной функционал оставить, тут хорошо подошло бы сравнение по строкам, а всё, что вы не делали, принять из master ветки.

"Таблетки от всего" тут не будет. Если вы раньше решали merge conflicts, думаю, понимаете как это работает. Стратегия - оставить вашу фичу и принять изменения другой ветки. Если различий слишком много, то тут и обычная интеграция старый-новый код будет сложная.

Один из вариантов - вынести вашу фичу в отдельный файл с приставкой _Temp или что-то в том роде. Дальше в режиме обычного кодинга интегрировать старое в новое (или наоборот).

Не уверен, что при 100500 конфликтов, у вас получится это сделать в режиме git-diff, поскольку вам нужно не только отсутствие синтаксических ошибок, а ещё и полность работающий функционал.

Второй вопрос, как так вышло, что ваша фича вызывает merge-conflict? Значит, она уже была кем-то сделана и закинута в master, либо у вас есть проблемы с таск-менеджментом, посколько одна фича требует глобальных изменений в проекте, что напрямую влияет на другой функционал

→ Ссылка