Назад | Перейти на главную страницу

subversion - как определить формат существующего репозитория

Есть ли способ узнать формат репозитория svn на диске, не зная, как он был создан? Возможно из format или db/format файлы?

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

На машине (gentoo), на которой я работаю, работает subversion 1.5.6:

me@foo ~ $ svn --version
svn, version 1.5.6 (r36142)
   compiled Jan 13 2010, 15:02:26

Я создал несколько тестовых репозиториев для игры:

me@foo ~ $ svnadmin create --fs-type bdb bdb-repo
me@foo ~ $ svnadmin create --fs-type fsfs fsfs-repo

В format и db/format файлы выглядят практически одинаково:

me@foo ~ $ more bdb-repo/format bdb-repo/db/format
::::::::::::::
bdb-repo/format
::::::::::::::
5
::::::::::::::
bdb-repo/db/format
::::::::::::::
3
me@foo ~ $ more fsfs-repo/format fsfs-repo/db/format
::::::::::::::
fsfs-repo/format
::::::::::::::
5
::::::::::::::
fsfs-repo/db/format
::::::::::::::
3
layout sharded 1000

Единственная разница в том, что layout sharded 1000 строка в репо fsfs db/format файл. Это окончательный показатель того, что он использует формат fsfs? Если нет, есть ли другой способ сказать?

Обнаружил ответ. Это в db/fs-type файл.

me@foo ~ $ cat bdb-repo/db/fs-type 
bdb
me@foo ~ $ cat fsfs-repo/db/fs-type 
fsfs

Ссылка здесь.

Я погуглил, прежде чем спросил, обещаю :)