Во-первых, я пытаюсь повторно интегрировать ветку в магистраль (используя TortoiseSVN), но получаю сообщение об ошибке «Для запроса информации о слиянии требуется версия 3 схемы файловой системы FSFS; файловая система E: / MyRepository / использует только версию 2».
Неужели в более ранних версиях Subversion невозможно было реинтегрировать ветки? Или есть другой способ сделать это?
В любом случае, как мне обновить файловую систему с версии 2 до версии 3?
Дамп / загрузка не требуется для обновления репозиториев Subversion. Используйте команду svnadmin upgrade:
svnadmin upgrade <path-to-repos>
ПРИМЕЧАНИЕ: svnadmin upgrade «выполняет только минимальный объем работы, необходимый для этого, при этом сохраняя целостность репозитория. Хотя дамп и последующая загрузка гарантируют наиболее оптимизированное состояние репозитория, svnadmin upgrade нет». - смотрите также документация по обновлению svnadmin
Вы не указали версию Subversion, на которой работает ваш сервер. Но судя по сообщению, которое вы указали в вопросе, вероятно, это версия 1.4.x или более ранняя. Я не помню, была ли предоставлена команда обновления для преобразования с 1.4.x в 1.5.x, но верный файловый способ перевести репозиторий из версии 2 в версию - это сделать дамп и загрузить. Но это не имеет большого значения, вы все равно захотите установить 1.6.x, чтобы использовать последнюю версию. Итак, вот шаги, которые вам нужно сделать:
См. Также FAQ по Subversion. http://subversion.apache.org/faq.html#dumpload для конкретного примера.
Об этом нужно позаботиться, а файл uuid не даст вашим клиентам волноваться. Однако, чтобы быть уверенным, обновите svn.
У Ивана есть хороший совет, который работает, я попробовал, и он очень простой.
svnadmin upgrade <path-to-repos>
Одна вещь, которую я пропустил в примере Ивана, может быть полезна другим:
Ex.
<path-to-repos> = C:\repos\theRepo
(ie. NOT C:\repos\theRepo\db)
Не указывайте svnadmin на каталог db, а на каталог, содержащий каталог db.