Подтвердить что ты не робот

Нефиксированная рабочая копия смешанной ревизии в SVN

У меня есть чистая проверка ветки (без изменений), но я не могу реинтегрировать ствол обратно в свою ветку, потому что SVN считает, что у меня есть рабочая копия со смешанной ревизией:

c:\myproject> svnversion
2045:2047

Кажется, проблема вызвана одним из моих внешних факторов:

c:\myproject> svn propget svn:externals tools
-r1448 ^/tools/external/trunk/gandalf/bin gandalf/bin
-r1508 ^/tools/external/trunk/gandalf/include gandalf/include
-r1508 ^/tools/external/trunk/gandalf/lib gandalf/lib
-r1428 ^/tools/external/trunk/jsdb jsdb
-r2045 ^/tools/external/trunk/java/lib/jing.jar jing.jar

Вы заметите, что все они являются внешними каталогами, а не внешними файлами, за исключением jing.jar, который является той же версией, что и то, что "svnversion" считает самым низким диапазоном моей рабочей копии, которая должна быть чистой Оформить заказ r2047.

Как я могу это исправить (кроме того, что не использовать внешний файл с одним файлом)?

Я пытался делать обновления, свежие проверки и очистка SVN, и это все еще имеет эту проблему. Я использую TortoiseSVN 1.6.12

4b9b3361

Ответ 2

Я пришел к другому решению, --allow-mixed-revisions:

svn merge -c7777 https://repo/app/branches/1.0 . --allow-mixed-revisions

Игнорирование внешних изменений при обновлении не устранило проблему для меня, даже если я сделал совершенно новую проверку.

Ответ 3

Обратите внимание, что эта проблема была исправлена ​​с Subversion 1.7.0. С тех пор svnversion (и логика слияния) игнорируют внешние файлы при определении изменений.

Ответ 4

Даже сразу после обновления/отправки всего моего хранилища я получил это сообщение об ошибке просто за попытку переименовать папку. Повторное обновление папки непосредственно перед переименованием исправило эту проблему для меня.