从多个文件还原SVN备份
我有一个非常大(~6GB)的SVN存储库,为此我编写了一个批处理文件脚本,每天进行增量备份。脚本将检查上次备份何时运行,并仅转储此后的修订 文件名为:从多个文件还原SVN备份,svn,Svn,我有一个非常大(~6GB)的SVN存储库,为此我编写了一个批处理文件脚本,每天进行增量备份。脚本将检查上次备份何时运行,并仅转储此后的修订 文件名为:backup-{lower\u revision}-{higher\u revision}.svn例如:backup-156-162.svn,backup-163-170.svn 这意味着我有相当多的小转储文件,我想这很好(比很多6GB转储文件好),但我有点担心,如果我需要从这些备份中恢复,需要做多少工作 为了减少文件总数,我已经开始在每个月的第一
backup-{lower\u revision}-{higher\u revision}.svn
例如:backup-156-162.svn
,backup-163-170.svn
这意味着我有相当多的小转储文件,我想这很好(比很多6GB转储文件好),但我有点担心,如果我需要从这些备份中恢复,需要做多少工作
为了减少文件总数,我已经开始在每个月的第一个月进行一次完全转储,但是,如果我需要在30日恢复,那将是30个转储文件,这可能需要一段时间
我一直在考虑的是:
- 手册:
svnadmin加载c:\myRepo
等待
svnadmin加载c:\myRepo
等待
等等 - 批处理文件,使上述过程不那么繁琐
- 将每个文件追加到一起并进行一次加载(如果可能的话?)
ps:操作系统是Windows无论您提出了什么解决方案,我都绝对建议您尝试恢复。通过这种方式,你可以验证这个过程是否达到了你真正想要的目的,并且当你需要愤怒地使用它时,你能够成功地完成它
我会尝试你的过程,因为你现在有它,如果这个过程是可以容忍的,那么越简单越好,不要弄乱它。如果这看起来是一项艰巨的工作,那就想尽一切办法寻找优化的机会。你只需将日期编号为[01,02,…31]就可以重命名文件,这样你的文件就可以轻松排序了 对于转储,知道其中包含哪些修订并不重要 <>我遵循一种不同的方法,因为像这样装载大量的回购需要一些时间,所以你应该考虑以下内容: 您可以使用svnadmin hotcopy每周/每月对存储库进行热拷贝。 每天您都应该进行增量转储以获取最新版本,以便检索您只需调用的最新版本
svnlook[live_repo]->为您提供实时存储库的最新版本 svnlook[copied_repo]->为您提供每周热拷贝备份的最新版本 现在,您可以使用两个修订号从实时回购运行转储。
优点:
- 更快地启动备份存储库并再次运行(转储需要几个小时!)
- 更少的转储文件
- 更少的脚本编写工作
- 可扩展到“每次提交”-通过提交后挂钩进行备份,因此您不会丢失任何修订
彼得的命令实际上是:
svn look youngest [live_repo]
svn look youngest [copied_repo]
好吧,问题是我实际上还没有一个过程——我试着从最好的开始:)好的,你描述了你的备份文件是如何创建的(而且你有很多备份文件),所以你必须让一半的过程正常工作。不,“svnlook”是一个实用程序;svn没有“look”子命令。