Свойства SVN Mergeinfo для путей, отличных от корневого каталога рабочей копии
-
23-08-2019 - |
Вопрос
У меня есть репозиторий SVN, где у меня есть магистраль и ветвь.
Я намерен регулярно объединять магистраль с ветвью, однако, когда я делаю это, я вижу много изменений статуса свойства в дополнение к фактическим изменениям содержимого файла.
При дальнейшем исследовании изменения свойств являются свойствами mergeinfo.Я бы не ожидал этого, потому что мы всегда ответвляйтесь и объединяйтесь с верхнего корневого уровня.
Я использовал svn propdel
команда и удалила все свойства mergeinfo из ветви WC (затем отменила изменение в корне) перед объединением trunk, и проблема исчезла.
Итак, вопрос в том, как моя ветка получила все эти изменения mergeinfo в ней на уровнях подкаталогов?
Решение
Subversion 1.5.x добавляет множество свойств svn: mergeinfo даже для файлов / папок, которые, по вашему мнению, не имеют никакого отношения к слиянию.Но Subversion по-прежнему использует их, чтобы сократить время слияния для последующих слияний.
Если они вам не нравятся, вы можете безопасно удалить эти измененные / добавленные свойства svn: mergeinfo из всех файлов / папок, которые не были частью слияния (оставьте их в корне рабочей копии и файлах / папках, которые получили изменения в результате слияния).
В Subversion 1.6 эти свойства svn: mergeinfo будут значительно уменьшены, если все пойдет по плану с выпуском 1.6.
Другие советы
По крайней мере, одна часть этой ошибки была исправлена в Subversion 1.5.5.Из 1.5.5 ИЗМЕНЯЕТ файл:
не создавайте mergeinfo для перемещений или копий wc-wc (r34184, -585)
То есть, в SVN до версии 1.5 была ошибка, из-за которой он создавал записи mergeinfo, которые он не использовал и были лишними.