Как переместить локальный репозиторий Tortoise SVN на наш новый сервер Linux SVN?

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

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

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

Как лучше всего это сделать?

4 ответов


вам нужно svnadmin dump ваш локальный репозиторий, получите этот файл дампа на машине Linux и svnadmin load там.

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

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


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


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

формат РЕПО FSFS совместим с платформой (пожалуйста, проверьте, что версия Linux svn такая же или выше, чем версия visualSVN)

Я делал это очень часто, и это действительно работает (конечно, намного лучше остановите фиксацию перед копированием РЕПО)


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

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

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

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

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