gpt4 book ai didi

svn - 从多个文件恢复 SVN 备份

转载 作者:行者123 更新时间:2023-12-05 01:21:16 27 4
gpt4 key购买 nike

我有一个非常大 (~6GB) 的 SVN 存储库,为此我编写了一个批处理文件脚本来每天进行增量备份。该脚本检查上次备份的运行时间,并仅转储自那时以来的修订。

文件名为:backup-{lower_revision}-{higher_revision}.svn例如:backup-156-162.svn , backup-163-170.svn .

这意味着我有很多小的转储文件,我想这很好(比很多 6GB 的转储文件要好),但我有点担心从中恢复需要多少工作量我需要这些备份。

为了减少文件总数,我已经开始在每个月的第一天进行一次完整的转储,但是,如果我需要在 30 日恢复,那将是 30 个转储文件,这可能需要一段时间.

我一直在考虑的是:

  • 手册:
    svnadmin load c:\myRepo < backup-1-10.svn
    等等
    svnadmin load c:\myRepo < backup-11-24.svn
    等等
    等等……
  • 批处理文件使上述过程不那么乏味
  • 将每个文件附加到一起并加载一次(如果可能的话?)

处理这些文件的最佳方式是什么,我是否需要恢复?

ps:操作系统是Windows

最佳答案

您应该仅通过编号 [01, 02,..31] 来重命名您的文件,这样您的文件就可以轻松地进行排序对于转储,知道里面有哪些修订并不重要。

我采用了不同的方法,因为像这样加载一个巨大的 Repo 需要一些时间,所以你应该考虑以下几点:
您可以每周/每月使用 svnadmin hotcopy 热复制存储库。每天你都应该做一个增量转储来获取最新的修订来检索你只需要调用的最新修订
svnlook youngest [live_repo] -> 为您提供实时存储库的最新版本

svnlook youngest [copied_repo] -> 为您提供您通过每周热复制备份的最后修订

现在您可以使用两个修订号从您的实时存储库运行转储。
优点:

  • 更快地让备份的存储库重新启动并运行(转储需要数小时!)
  • 减少转储文件
  • 更少的脚本编写工作
  • 可通过提交后 Hook 扩展到“每次提交”备份,因此您不会丢失任何修订

关于svn - 从多个文件恢复 SVN 备份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/190454/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com