Я хочу удалить все предыдущие версии и оставить только текущую.
Есть ли способ сделать это?
Я не нахожу возможной команды для этого:
[secret@vps303 ~]# svnadmin --help
general usage: svnadmin SUBCOMMAND REPOS_PATH [ARGS & OPTIONS ...]
Type 'svnadmin help <subcommand>' for help on a specific subcommand.
Type 'svnadmin --version' to see the program version and FS modules.
Available subcommands:
crashtest
create
deltify
dump
help (?, h)
hotcopy
list-dblogs
list-unused-dblogs
load
lslocks
lstxns
pack
recover
rmlocks
rmtxns
setlog
setrevprop
setuuid
upgrade
verify
ОБНОВИТЬ
Кажется, единственное решение - экспортировать, а затем импортировать, но будут ли экспортированы настройки прав доступа, когда мы запустим svn export
?
Ответ действительно на
svnadmin dump -r<revisionnumber> /old/repo/path > repo.dmp
svnadmin create /new/repo/path
svnadmin load /new/repo/path < repo.dmp
Делать не использовать svn export
, вы можете потерять несколько удобных svn: externals, svn: ignore's, svn: executable и тому подобное. Старые версии и ведение журнала в порядке, но те, которые вы обычно хотите оставить :)
Возможную конфигурацию auth / access / hook / other вы обычно можете скопировать, скопировав каталоги ./conf и ./hooks из старого репозитория в новый. Пока в нем нет жестко заданных путей, они должны работать мгновенно. После копирования этих каталогов сравните права доступа к файлам вашего старого и нового репо.
Используйте bin svnadmin на svn-сервере, вы не можете сделать это с svn-клиентом.