SVN - изменить рабочую копию, чтобы она указывала на новый путь svn

У меня есть репозиторий SVN, который переехал на новый адрес / путь. Однако у меня есть рабочая копия с незафиксированным исходным кодом, по-прежнему указывающим на старый (теперь недопустимый) путь к репозиторию. Как сделать так, чтобы рабочая копия указывала на новый репозиторий?


person quano    schedule 30.01.2010    source источник


Ответы (7)


svn switch --relocate устарел, начиная с версии 1.7 Subversion. Вместо этого используйте команду svn relocate.

В качестве аргументов он принимает FROM-PREFIX TO-PREFIX [PATH...] или TO-URL.

Видеть

svn help relocate

Чтобы получить больше информации.

person Michael Krebs    schedule 05.06.2013

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

person Greg Hewgill    schedule 30.01.2010
comment
Спасибо. Вот что я использовал: svn switch --relocate file: /// Users / user / old_repository / project / trunk file: /// Users / user / new_repository / project / trunk - person quano; 30.01.2010
comment
Не исправляет URL-адреса в svn: externals. Есть идеи, как это сделать? - person Axel Bregnsbo; 10.05.2017

Использование TortoiseSVN

  1. Щелкните правой кнопкой мыши рабочую копию и выберите «SVN Switch ...»
  2. В форме «Перейти к ветке» выберите новый путь SVN

Использование команды

  1. Открытая консоль
  2. Перейдите к рабочей копии cd [working copy path]
  3. Напишите команду svn relocate [new url]
person Ahmed Abdallah    schedule 04.11.2013
comment
Это применимо только при использовании TortoiseSVN, который на плакате не указано, что он или она использует. - person zck; 05.11.2013
comment
Привет, @zck, обратите внимание, что я написал 2 решения в 1 ответе, первый TortoiseSVN и второй - Command, эта команда устарела для подрывной деятельности в целом, вы можете просмотреть эту страницу Подкоманды svn relocate / svn - person Ahmed Abdallah; 09.11.2013
comment
Что ж, ваш ответ был отредактирован после того, как я прокомментировал, чтобы включить способ сделать это из командной строки. Этот ответ командной строки уже был опубликован в июне, поэтому нет необходимости его повторять. - person zck; 09.11.2013
comment
Нет, я публикую ответ в его текущих словах "моя правка" только для улучшения форматирования; и я думаю, что команда, которую я написал, более понятна, чем та, что была написана в июне - person Ahmed Abdallah; 09.11.2013
comment
Для графического интерфейса TortoiseSVN требуется щелкнуть «переместить», а не переключаться. Это имеет смысл, учитывая командную строку ... Не уверен, что подействует переключатель - похоже, он пытается получить доступ к старому URL-адресу и новому URL-адресу, чего я не хотел, чтобы он делал. - person Gerard ONeill; 02.10.2019

Если быть более точным

svn switch --relocate [complete url of the old repo] [complete url of the new repo] 

Например:

svn switch --relocate  http://svn.repo.com:9880/website/branches  http://svnrepo.com/web/branches 
person BTR Naidu    schedule 11.12.2013

Использование TortoiseSVN tortoisesvn docs

  1. Перейдите в корневую папку рабочей копии
  2. Щелкните правой кнопкой мыши, выберите Подменю TortoiseSVN, щелкните Переместить.
  3. Введите новый путь
person Yitzhak Weinberg    schedule 27.07.2018

Очень просто:

Шаг 1. Откройте командную строку / терминал и укажите рабочий путь.

Шаг 2: Выполните эту строку svn switch --relocate http://newurl

person Rajesh Loganathan    schedule 10.03.2015

Я изменил свой svn-сервер, чтобы принудительно перенаправить все с HTTP на HTTPS (и это могло быть перенаправление на любой другой URL-адрес), и я заметил, что эта команда svn relocate вызвала множество проблем с внешними данными. К счастью, я обнаружил, что проще всего было просто выполнить svn update, и из-за перенаправления сервера svn он обновил все хранилища URL-адресов в локальной рабочей копии, включая внешние.

person Gunther Schadow    schedule 02.02.2020