Разрешение конфликта слияния из-за удаленных файлов в ветке выпуска - PullRequest
0 голосов
/ 15 мая 2019

Я использую модель ветвления на основе GitFlow в своем проекте.Процесс выпуска заключается в следующем: создайте новую ветку release из dev, поработайте над некоторыми последними исправлениями ошибок в этой новой ветви release, объедините ее в master (создавая тег выпуска), а затем объедините master назад к dev.

В идеале, эти release ветви являются недолговечными, и слияния происходят без проблем.Но в моем последнем случае это стало беспорядком, и некоторые важные исправления были сделаны в dev по ошибке.Я пытался выбрать их, но это было слишком грязно.Итак, я решил объединить release обратно в dev и начать заново с dev: создал новую ветку release и удалил материал, не относящийся к выпуску.Вот ситуация:

---x---x---x---x (dev)
    \
     \
      d---x---x (release)

---x (master)

, где commit d удаляет кучу файлов, не относящихся к этому выпуску.

Проблема

Когда я объединяю release в master, а затем попытайтесь объединить master обратно в dev, он пытается удалить файлы из dev из-за фиксации d.Я также получаю несколько конфликтов типа

CONFLICT (modify/delete): <file path> deleted in master and modified in HEAD

Вопрос

Как объединить release таким образом, чтобы он игнорировал фиксацию d и избегал конфликтов при последующих объединениях?

...