将SVN存储库复制到外部HDD是否安全?

时间:2008-10-09 17:28:14

标签: svn version-control backup

现在,我的SVN存储库位于笔记本电脑的硬盘上(虽然我使用代码托管服务来处理更多“关键”个人项目)而我只是每周复制一次目录(最终会编写脚本或者我我会为它做一个应用程序。)我是否有破坏我的SVN存储库的风险?到目前为止,我对原件或副本没有任何问题,但这并不意味着我将来不会有风险。

6 个答案:

答案 0 :(得分:12)

考虑使用hot copy

  

svnadmin hotcopy - 制作存储库的热门副本......

     

此子命令对存储库进行完整的“热”备份,包括所有挂钩,配置文件,当然还有数据库文件。如果您传递--clean-logs开关,svnadmin将执行存储库的热拷贝,然后从原始存储库中删除未使用的Berkeley DB日志。您可以随时运行此命令并制作存储库的安全副本,无论其他进程是否正在使用存储库...

答案 1 :(得分:3)

AFAIK它是安全的,但为什么不进行导出备份呢?

答案 2 :(得分:2)

您可能是安全的,但仅仅是因为您知道没有人访问您笔记本电脑上的存储库。但是,svn(svnadmin)提供的热拷贝和转储命令与复制命令一样容易运行,并且它们“保证安全”。

答案 3 :(得分:1)

您不应该只是在进行复制时破坏主存储库的风险。但是,如果在复制时锁定了某些内容,则副本可能会损坏。

您可以使用SyncBackSE之类的应用程序来安排备份,并在锁定时使用卷影副本。

答案 4 :(得分:0)

您写道:

  

现在,我的SVN存储库位于笔记本电脑的HDD上,我只是每周复制一次目录

问题:为什么?

  

我是否有破坏SVN存储库的风险?

如果您的副本只是:副本,则完全没有。如果您的“副本”打开了一些文件已锁定进行编写,您可能会面临风险(您在评论中说它看起来像是在Windows下,而且可能在Windows上发生) - 如果有的话另一个过程试图同时在回购中写点东西。

  

到目前为止,我对原件或副本没有任何问题,但这并不意味着我将来不会有风险。

真正的意思是:你是为了备份而复制吗?如果是这样,副本可能没用(取决于还原过程的详细信息)。看到: http://svnbook.red-bean.com/en/1.5/svn.reposadmin.maint.html#svn.reposadmin.maint.migrate

最后: 使用svnadmin转储

答案 5 :(得分:0)

我曾经使用闪存盘,只是在它上面创建了一个基于文件的repo。唯一的缺点(除了忘记它!)是闪存盘必须在每台PC上都有相同的驱动器号,速度,感觉就像一个缓慢的互联网连接。

否则,它运作得很好。