我在我工作的企业中有一个大型存储库到SVN服务器.我需要每天验证此存储库的完整性,以检查SGBD的某些不稳定性或破裂.
我正在使用提示命令行“svnadmin path_to_my_repository”来验证我的存储库的完整性.
问题是:我的存储库如此大(大约23GB,修订版为28.029),此操作需要很长时间才能完成.
问题是:如何优化此操作以减少实际采取的时间?或者使用其他方法可以用更少的时间来验证我的存储库的完整性?
一些额外的信息:
>安装SVN存储库的操作系统是:Windows Server 2008
>我用来存储我的存储库的SVN服务器是:VisualSVN Server Manager 2.5.7
>命令“svnadmin path_to_my_repository”实际上需要大约18~24小时.
最佳答案 “svnadmin verify”命令采用了一些不同的参数.其中之一是“–revision”.那么你应该为你拥有的每个存储库做些什么,找出一种方法来获取在过去N天内修改的修订列表(如果每天运行,可能是最后7天),并且只验证这些.
List of files changed since a certain date using SVN
您还应该定期对整个存储库进行完整的“svnadmin验证”(每周一次?每月一次?).如果遇到问题,完整检查的频率应该是您可以从备份集中提取损坏的修订版本.
或者,如果您使用“svnadmin hotcopy”并将该hotcopy推送到第二组主轴(或第二个服务器),则可以验证hotcopy.这将删除主磁盘的负载.