Всякий раз, когда что-то в Subversion ведет себя неожиданно или кажется более сложным, чем должно быть, мое общее правило заключается в том, чтобы взять свежую рабочую копию в новом чистом каталоге и попробовать ее снова без локальных изменений. Это, как правило, исключает ряд тонких проблем, которые трудно обнаружить.
Кроме того, выполните svn diff <server>/branches/this_branch <server>/trunk
, чтобы убедиться, что Subversion считает, что есть изменения для слияния. Использование двух путей к хранилищу устранит любые возможные проблемы с вашей рабочей копией. Если указанная выше команда diff
дает вам другие результаты, когда вы меняете URL-адрес ветви на путь к своему WC, вероятно, проблема в вашей рабочей копии.
Вы также можете выполнить слияние исключительно в хранилище, указав два полных URL-адреса для команды merge
. Если вы идете по этому пути, я настоятельно рекомендую использовать параметр --dry-run
для предварительного просмотра слияния, прежде чем сделать его официальным.
Кроме того, есть ли причина, по которой вы объединяете, используя конкретные имена файлов, а не просто объединяете весь /trunk
со своей веткой? Обычно я вижу гораздо меньше проблем при объединении целых ревизий в ветку, а не в конкретные файлы.