@ChipiLina

Расскажите пожалуйста, что может произойти, если ответвить ветку от родительской с текущим кодом, а потом изменить родительскую ветку?

Работаю над проектом и появился такой вопрос, который не хочу проверять на своём проекте - вдруг что сломается.
Например, есть ветка develop со стабильным кодом, от неё ответвляется ветка feature/FEATURE_NAME для написания новой функции. А что если после ответвления изменить ветку develop, а потом слить туда изменения из feature/FEATURE_NAME? Возникнут ли конфликты и если да, то как их можно решить?
  • Вопрос задан
  • 333 просмотра
Решения вопроса 3
delphinpro
@delphinpro
frontend developer
Конфликты могут возникнуть, если в обеих ветках были изменены одинаковые участки кода, и гит не смог самостоятельно определить, какой вариант следует оставить.
Тогда вы должны будете при слиянии вручную разрешить конфликты (по сути отредактировать конфликтные файлы, в которые гит вам накидает по две версии кода) и застейджить их.
Ответ написан
Комментировать
@lolrofl01
Странный вопрос. Конфликты возникнут только если один и тот же файл был изменен в обеих ветках. Если, например, на одной ветке вы пилили модуль загрузки, а на другой - модуль выгрузки, то конфликтов никаких не будет (надеюсь, они в разных файлах?). Что касается мержа одинаковых файлов - тут вручную надо выбрать какой код оставить, какой убрать, или же оставить оба варианта кода, объединив их в один файл.
Ответ написан
Комментировать
sergey-kuznetsov
@sergey-kuznetsov Куратор тега Git
Автоматизатор
вдруг что сломается

Если вы работаете в Git то вы ничего не можете сломать. Не бойтесь экспериментировать.
А тематические ветки на то и придуманы, чтобы в них отлаживать фичу перед отправкой в главную ветку.

Возникнут ли конфликты и если да, то как их можно решить?

Могут возникнуть, а могут и нет. В любом случае — конфликты это хорошо, это нормальный рабочий процесс. И конфликты разрешаются инструментом разрешения конфликтов или просто руками в текстовом редакторе. Чтобы не ломать общую ветку, можно предварительно забрать обновления оттуда к себе в тематическую, разрешить конфликты, прогнать тесты, и уже потом слить работу в основную ветку. Тогда конфликтов уже не будет.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы