Как мне перенести новый репозиторий SVN на старую версию?

Некоторое время назад я создал локальный репозиторий с помощью tortoiseSVN. Теперь я хочу перенести репозиторий в свою учетную запись DreamHost.

Я переместил файлы, но похоже, что DreamHost использует старую версию SVN.

когда я даю команду

svnadmin load 'repository dir'

он плюется в ответ

svnadmin: Ожидаемый формат FS "2"; нашел формат '4'

Решение?


person michael    schedule 04.11.2009    source источник


Ответы (2)


Изменить: ваше сообщение связано с тем, что вы создали целевой репозиторий с более новой версией сервера, а затем попытались загрузить дамп с более старой < / strong> версия svnadmin. Прочтите ниже для правильной процедуры.


Я не понимаю, что такое svnadmin load, создавали ли вы ранее файл дампа с помощью svnadmin dump? Это лучший вариант для переноса репозитория между версиями, поскольку обычно формат не должен меняться.

Итак, вы должны сделать в версии, использующей исходный репозиторий (новейшая версия SVN):

svnadmin dump <repos_path> > dump_file

и на конечном сервере (самая старая версия SVN):

svnadmin create <newrepos_path>
svnadmin load <newrepos_path> < dump_file

Вы можете использовать параметр --deltas в дампе, если у вас большой репозиторий, так как эти дампы могут стать довольно большими.

Если это то, что вы сделали, и это не удалось, не могли бы вы уточнить соответствующие версии и дать еще несколько деталей?

person RedGlyph    schedule 04.11.2009

Если дамп не работает, вы также можете попробовать svnsync перенести содержимое в новый репозиторий: после создания репозитория DreamHost создайте простое предварительное изменение хук, который просто выходит из 0, чтобы включить изменения свойств:

#!/bin/sh
exit 0

После этого можно начинать:

svnsync init [DREAMHOST_URL] [OWN_REPO_URL]

svnsync sync [DREAMHOST_URL]

Затем все исправления будут перенесены в ваш новый репозиторий.

person Peter Parker    schedule 04.11.2009