Слияние разрешения конфликтов над новым кодом

Допустим, у меня есть какой-то код, который заказывается, но заказ не является техническим требованием.

apple
kiwi
strawberry

И тогда у меня есть две темы, которые я хочу объединить, чьи диффы выглядят так:

TOPIC BRANCH: orange
  kiwi
+ orange
  strawberry

А также

TOPIC BRANCH: pear
  kiwi
+ pear
  strawberry

Есть ли способ для этих двух патчей разрешиться автоматически? Мне кажется, что это конфликт слияния, так как они конкурируют за одну и ту же новую линию. Решение, которое я придумал, состоит в том, чтобы переупорядочить одно из изменений, поскольку порядок сортировки является лишь мягким требованием (где фрукты на самом деле являются определениями функций).

 TOPIC BRANCH: pear'
   apple
 + pear
   kiwi

Итак, теперь мы можем объединить оранжевый и грушу вместе, чтобы сформировать:

 _ apple
 p pear
 _ kiwi
 o orange
 _ strawberry

Есть ли другие способы решить эту проблему, чтобы можно было сохранить порядок?Я также подумал о том, что pear должен идти вниз по течению от orange, так что orange всегда получает приоритет, и больше не будет конфликта слияния. Но это ложная зависимость, поскольку orange и pear являются двумя отдельными ветвями признаков.

Один из них может быть встроен в ствол раньше другого, но это не относится к интеграционным ветвям.

Правка: Меня только что осенило, что для двух кусков, которые можно было бы сохранить (дополнения, только я думаю?), могут быть две стратегии слияния под названием «я первый» и «ты первый», так что неоднозначный порядок может быть разрешен неинтерактивно между двумя ветвями.

5
задан Mark Canlas 26 January 2012 в 19:14
поделиться