Как я могу переместить мой локальный репозиторий Tortoise SVN на наш новый сервер Linux SVN? - PullRequest
6 голосов
/ 12 ноября 2009

Я использую Tortoise SVN (и VisualSVN) с локальным хранилищем на моем настольном ПК в течение нескольких месяцев. Мы только что настроили сервер Linux SVN, и я хочу переместить свой репозиторий на этот сервер, сохранив всю мою историю. Как только он будет перемещен, я перестану использовать локальный репозиторий.

В документации по черепахе предлагается использовать команду «Переместить ...», но это приводит к несоответствию UUID. Я нашел несколько советов о том, как отредактировать файл UUID, чтобы он соответствовал серверу, но Tortoise проигнорировал новое значение даже после перезагрузки.

Кроме того, в настоящее время у меня нет доступа из командной строки к серверу Linux, но, возможно, я смогу получить его, если потребуется.

Какой лучший способ сделать это?

Ответы [ 4 ]

9 голосов
/ 12 ноября 2009

Вам необходимо svnadmin dump в вашем локальном репозитории, загрузить этот файл дампа на компьютер с Linux и svnadmin load его там.

Relocate используется в ваших рабочих копиях после того, как было сделано выше.

Вот документация.

2 голосов
/ 12 ноября 2009

Если вы используете FSFS-серверную часть хранилища (это стандартная версия начиная с версии 1.3), вы можете просто скопировать весь каталог хранилища (например, через SCP) на сервер LINUX. Тогда перемещение не должно быть проблемой, так как на самом деле это тот же репозиторий.

Формат репозитория FSFS совместим с платформой (пожалуйста, убедитесь, что версия Linux Linux SVN такая же или выше, чем версия VisualSVN)

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

2 голосов
/ 12 ноября 2009

Лучше всего прочитать раздел Миграция репозитория в книге Red Bean

1 голос
/ 19 июня 2013

Я только что попробовал следующее (в ответ на сильное отчаяние):

Репозитории были созданы с TortoiseSVN и без SVN, работающего на другой стороне (только общий ресурс). Итак, я установил новый сервер SVN и использовал его двоичные файлы для запуска

C:\csvn> svnrdump dump file://server_ip/shared_resource/project > projectDump.svndump

Где server_ip - это ip сервера, на котором был создан репозиторий. И это сработало! Просто необходимы разрешения для общей папки (в моем случае у меня есть пользователь в Active Directory для входа на старый сервер репозитория и новый).

Просто догадался, что эта информация может помочь любому, кто, как и я, страдает от тяжелой миграции дрянной установки.

...