Понижение формата БД репозитория svn с 1,6 до 1,5
У меня необычная ситуация, потому что мне нужно перенести репозиторий svn с svn-сервера 1.6 на svn-сервер 1.5. Проблема в том, что нет инструментов для понижения рейтинга. Кто-нибудь знает некоторые скрипты или имеет опыт с понижением репозиториев svn?
спасибо,
Кевин
3 ответов
можно использовать svnsync
для перемещения содержимого из одного репозитория в другой.
нормально svnsync
предназначен для поддержания зеркала только для чтения в актуальном состоянии, но я считаю, что он будет отлично работать и для одноразовой миграции. Он также имеет преимущество работы исключительно как SVN-клиент, поэтому вам не нужен административный доступ на сервере.
помимо предложения WiM svnsync другой вариант-полный дамп / перезагрузка; используйте Subversion 1.6 svnadmin для сброса репозитория, например
svnadmin dump --incremental --deltas > dump_file
а затем используйте 1.5 tools, чтобы загрузить это обратно в чистый репозиторий
svnadmin create repository_15
svnadmin load repository_15 < dump_file
затем вам придется скопировать крючки из старого репозитория в новый репозиторий и запустить svnadmin pack
Если вы используете и т. д.
начиная с subversion 1.8, можно создать совместимый репозиторий без переключения инструментов.
экстракт
извлеките содержимое существующего репозитория subversion с помощью svnadmin dump
или svnrdump
для удаленных репозиториев:
svnadmin dump --incremental --deltas /path/to/local/repository > /tmp/repository.dump
воссоздать как v1.5 совместимость
используя svnadmin
создайте новый 1.5 совместимый репозиторий и загрузите ранее сброшенное содержимое:
svnadmin create --compatible-version 1.5 /path/to/local/repository_15
svnadmin load /path/to/local/repository_15 < /tmp/repository.dump
крючки и другие параметры хранилища не переносится и должен быть настроен вручную.
в Subversion 1.7
Subversion 1.7 поддерживает возможность создания совместимых репозиториев с помощью устаревший --pre-1.6-compatible
флаг.