Реинтеграция ответвления подверсии в v1.6 [дубликат]

49
задан Community 23 May 2017 в 02:08
поделиться

2 ответа

Чтобы многократно объединять ветку тему в магистраль : Выполняйте следующие действия при каждом слиянии.

  1. svn merge --reintegrate <тема> <ствол> , как обычно. ( => r M )
  2. svn merge --record-only -c M ^ / . Обратите внимание на параметр только для записи .

Шаг 2, по сути, указывает ветке темы, чтобы она считала фиксацию слияния (ревизия M , из шага 1) частью своей истории. Эта ревизия слиянием обычно вызывает проблемы во время реинтеграции; svn пытается отменить rM при повторной интеграции топика .

Итак, повторная реинтеграция работает, просто не автоматически. :)

В конце концов я нашел это решение через разъясняющее сообщение фиксации для источника svn и соответствующий тест (поиск по запросу «def multiple_reintegrates»). Это "хитрый прием", обнаруженный и используемый svn-devs в текущих выпусках. Это даже было добавлено в более свежую документацию . Результат все еще не так хорош, как свойства слияния DVCS, но, по крайней мере, он функциональный.

Единственным серьезным недостатком (согласно открытой проблеме от 2 июня 2010 г.) является то, что, по-видимому, вывод svn log -g беспорядочный. Думаю, это риск.

56
ответ дан 7 November 2019 в 11:53
поделиться

Хотя 1. 6 действительно исправил проблемы с отслеживанием слияний, я не думаю, что вы можете повторно использовать интегрированную ветку.

Но это не проблема. Поскольку ветка полностью интегрирована в ствол, просто удалите её и создайте на её месте новую ветку (с тем же именем).

1
ответ дан 7 November 2019 в 11:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: