How to recover repository using SVN hotcopy?

纵饮孤独 提交于 2020-01-01 03:04:27

问题


Okay. I used svn's hotcopy to make incremental back-ups, now how do I test that the hotcopies will work properly?

I searched the posts here regarding hotcopy. Most of them seem to just be encouraging the use of the svn hotcopy, but not talking about how to recover using hotcopy once made.

Is there any advice about how to recover using the hotcopy that I've made?

I also checked http://svnbook.red-bean.com/, but couldn't really find anything.

Thanks.


回答1:


svnadmin hotcopy will always create full copies of your repository. It is not possible to do incremental backups with svnadmin hotcopy.

svnadmin hotcopy works like a filesystem copy command, except it will never copy open transactions.

To restore a repository you can just svn hotcopy your backup to the place from which you want to serve it.

For checking the integrity of a repository use svnadmin verify

eg:

assume your svn repos are on /var/svn/repos and your backups are stored on /var/backups/svn and your repository my_project is broken.

Use:

svnadmin hotcopy /var/svn/repos/my_project /var/backups/svn/

to create a new backup (do this every day or week..) and:

svnadmin hotcopy /var/backups/svn/my_project /var/svn/repos/

to restore your backup (note: you have to remove your repo before, as hotcopy will not overwrite your old repo, also you really should look for the cause of your repository failure).

Also use:

svnadmin verify /var/svn/repos/my_project

for checking the integrity of your repository




回答2:


Are you just looking for a smoke test? Just point any client at it (directly on the machine, with the file:// protocol if you want) and do some checkouts- the files constitute a valid repo. The hotcopy is just to make sure you get a consistent copy (eg, checkins that happen during the hotcopy don't screw up the backup).



来源:https://stackoverflow.com/questions/1610755/how-to-recover-repository-using-svn-hotcopy

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!