Частичное слияние SVN верхнего уровня - PullRequest
0 голосов
/ 17 марта 2020

С риском задать повторяющийся вопрос ( Как игнорировать папку во время слияния Subversion ), вот оно:

Используя SVN (версия 1.9.3), я разработка вне функциональной ветви A. Мои изменения довольно ограничены и ограничены одной папкой. Я делаю периодические c реинтеграции слияния с транком, которые прекрасно работают:

транк $ svn слияние ^ / branch / branch_A

Затем я делаю син c слияние из транка в моя ветвь A:

branch_A $ svn merge ^ / trunk

... и обнаружение МНОГО обновлений в нескольких папках, совершенно не связанных с моей функцией. Я даже не проверял эти папки, потому что моя функция влияет только на небольшое поддерево. Но я вижу много сообщений "Пропущенная отсутствующая цель: ...", когда я делаю слияние. И несмотря на то, что в моей рабочей копии отсутствуют (то есть не извлечены) папки, SVN все еще выдает БОЛЬШОЙ список обновлений состояния слияния. Я заканчиваю sh слияние, фиксируя все обновления, которые были фактически применены к моей рабочей копии, и go на моем веселом пути. Но в следующий раз, когда я выполняю объединение syn c, я получаю тот же огромный дамп состояния слияния для папок / файлов, который я даже не извлек.

Как это исправить?

Одно из решений - ничего не делать, но дамп состояния слияния действительно раздражает. Другой вариант - проверить полное дерево в моей ветке и зафиксировать все обновления слияния. Но это было бы МНОГО дополнительных папок, которые мне не нужны или мне не нужны. Третий вариант - выполнить слияние вишен c в папках, которые мне нужны, но это нарушает рекомендации SVN («только слияния верхнего уровня») и изменяет свойство папок mergeinfo, что может создать больше проблем. линия. В идеале я бы хотел сказать SVN «выполнить слияние верхнего уровня, но только из папок в рабочей копии». Есть ли способ?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...