ошибка переключения svn - это не тот же репозиторий

StackOverflow https://stackoverflow.com/questions/925698

  •  06-09-2019
  •  | 
  •  

Вопрос

Недавно я переместил сервер SVN, и теперь я пытаюсь переместить рабочие копии со своего компьютера на новый сервер.Но я получаю самую странную ошибку.я знаю :

svn switch http://99.99.99.new/svn/company/project/trunk/web

но я получаю

svn: 'http://99.99.99.old/svn/company/project/trunk/web'
is not the same repository as
'http://99.99.99.new/svn/company/project'

этот шаг был сделан с помощью dump и import ...и корневой каталог репо включен http://99.99.99.new/svn/company/project

Ребята , у вас есть какие - нибудь идеи о том , что может быть не так ?большое спасибо

Это было полезно?

Решение

Попробуйте использовать

svn switch --relocate http://99.99.99.old/svn/company/project/trunk/web http://99.99.99.new/svn/company/project/trunk/web

Как отметил Спорино в комментариях, начиная с Subversion 1.7, существует отдельный relocate команда:

svn relocate http://99.99.99.old/svn/company/project/trunk/web http://99.99.99.new/svn/company/project/trunk/web

Другие советы

Кроме того, в TortoiseSVN есть опция "Переместить", которую вы должны использовать в подобных ситуациях (вместо опции "Переключить").

Мой лучший способ выполнить перемещение SVN - это:

svn switch --relocate $(svn info | grep ^URL | cut -f 2 --delim=' ') \
                      new_url_or_repository

Таким образом, используя правильный старый URL-адрес из svn info команда, вы уверены, что не введете неправильную, что является одной из распространенных ошибок.

Если все верно, вам будет предложено ввести данные авторизации для нового местоположения, если они отличаются.

После выполнения команды обязательно дважды проверьте, что изменение было применено, просмотрев параметр URL, выдающий

svn info

После перемещения обновите свою рабочую копию, чтобы убедиться, что все в порядке:

svn update

Мой 2с ..

Используйте relocate параметр командной строки для switch команда.

документация по svn-коммутатору

Иногда администратор может изменить "базовое местоположение" вашего репозитория — другими словами, содержимое репозитория не меняется, но меняется основной URL, используемый для доступа к корню репозитория.Например, может измениться имя хоста, или схема URL, или, возможно, просто путь, который ведет к репозиторию.Вместо того, чтобы извлекать новую рабочую копию, вы можете попросить команду svn switch "переписать" начало всех URL-адресов в вашей рабочей копии.Используйте команду --relocate для выполнения замены.Содержимое файла не изменяется, и с репозиторием не связываются.Это похоже на запуск perl-скрипта над вашей рабочей копией .svn/ каталогов, который запускает s/OldRoot/NewRoot/.

Вам нужно использовать опцию --relocate (переместить) :

svn switch --relocate http://99.99.99.new/svn/company/project/trunk/web

видишь svnbook для получения более подробной информации.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top