У меня есть следующая ситуация ветвей в репозитории Perforce: есть магистраль «ствол» и две ветки релиза «1.0» и «1.1».Ветвь «клиент» с изменениями, специфичными для клиента, была отделена от ветки 1.0.Теперь заказчик хочет перейти на версию 1.1.Как я могу объединить ветку 1.1 в ветку клиента?Изменения, характерные для клиента, должны оставаться «сверху» 1.1.
Вот диаграмма для одного затронутого файла:
1.1 -(1)---(2)---(3)
/ \ \
/ \ \
trunk 100--(101)-(102)--103---104---105---106---107
\
\
1.0 ---1-----2--...
\
\
customer ---1-----2----*3*
Текущая версия файла, на который я смотрю, - версия 3на ветви клиента.
Если бы я решил объединить филиал «1.1» с целевым «клиентом», я бы ожидал, что общий предок обоих найден (версия 100 на главной линии), и все изменения оттуда ведут ккончики ветви 1.1 объединяются (те, что указаны в скобках).
Вместо этого Perforce предлагает только объединить ревизии с 1 по 3 ветви 1.1, что завершается неудачно, поскольку в ней пропускаются необходимые изменения, которые произошли в магистрали ранее.
Как я могу убедить Perforce сделать это, не просматривая каждый файл вручную и не выбирая ревизии для слияния?Может быть, стратегия ветвления не подходит?Что еще мне делать?