subversive все еще имеет ссылку на старый сервер репозитория SVN

Наш сервер SVN недавно переместил серверы (с сервера A на сервер B). Я сделал «перемещение» в Eclipse для репозитория и переместил его на serverB. SVN был удален с сервера ServerA. При синхронизации все нормально, однако при "обновлении" в консоли получаю следующее:

No connection could be made because the target machine actively refused it.  
svn: Can't connect to host 'serverA.mysite.com': No connection could be made because the target machine actively refused it.  

Итак, каким-то образом где-то хранится ссылка на старый сервер, как я могу ее найти и изменить?


person Mark W    schedule 20.04.2011    source источник


Ответы (2)


Я предполагаю, что это где-то в entries файлах вашего WC (рабочая копия). Чтобы найти ссылки на serverA.mysite.com, воспользуйтесь помощью grep (в корне вашего WC):

grep -rni --include "entries" "serverA.mysite.com" .

Если вы работаете в Windows, вы можете установить cygwin или wingrep, чтобы сделать всю работу за вас.

person eckes    schedule 20.04.2011
comment
ТУАЛЕТ? - я в системе Windows :( - person Mark W; 20.04.2011
comment
Это было. В каждом каталоге есть папка .svn, содержащая файл записей. Это был один подкаталог, который каким-то образом указывал на другую ветку и сервер. - person Mark W; 20.04.2011
comment
Понимаю. Я использовал диалоговое окно поиска, прежде чем задавать вопрос, но он не нашел никаких ссылок на старый сервер. Винда бесполезна. - person Mark W; 20.04.2011

Одно из возможных решений состоит в том, что дерево вашего проекта использует "externals". функция с явными URL-адресами.

В этом случае вам придется просмотреть свои свойства и исправить их (что-то вроде)

svn propget svn:externals folder > ext.txt
cat ext.txt | sed -e 's/ServerA/ServerB/' > ext_patch.txt
svn propset svn:externals -F ext_patch.txt folder

Это должно было быть сделано во время переноса депо вашим администратором, однако, когда депорт был перенесен, с аналогичным регулярным выражением в необработанном дампе. Предыдущее предложение хорошо подходит для исправления кодовой строки в режиме реального времени, но не исправит ваши существующие теги, которые стали неработоспособными.

Обратите внимание: если вы не знаете о svn:externals (удобном способе обработки внешних зависимостей), мой ответ вас не касается.

EDIT: добавлена ​​ссылка на документ svn для внешних устройств, добавлен пример кода для исправления, добавлены пояснения

person Bruce    schedule 20.04.2011