gpt4 book ai didi

svn - 使用 svnrdump 和 svnsync 进行 Subversion (SVN) 备份有什么区别?

转载 作者:行者123 更新时间:2023-12-01 18:29:50 24 4
gpt4 key购买 nike

我正在尝试弄清楚如何备份我的远程 Subversion (SVN) 存储库,并且我在不同的地方看到了建议的以下两种方法。它们会在生成的转储文件中产生任何显着差异吗?

1.使用svnsync

svnsync init file:///path/to/local/repo URL_of_remote_repo

svnsync sync file:///path/to/local/repo

svnadmin dump /path/to/local/repo > repo.dump

2.使用svnrdump

svnrdump dump URL_of_remote_repo > repo.dump

注意,选项 1 需要一些额外的 preparation ,但这对于这里提出的问题来说并不重要。

最佳答案

转储文件大致相同。如果您使用 svnsync,您将在 r0 上拥有一些额外的修订属性,svnsync 将使用这些属性来跟踪其源存储库。

除非您有一个小型存储库,否则您可能不想在每次备份时对整个存储库进行 svnrdump。因此,这意味着您必须获取并跟踪备份的修订并继续生成增量转储。另一方面,svnsync 你不必跟踪你的修订停止点,它会为你做到这一点,并且每次你运行同步时,它只会拉下新的修订。

如果您不使用 svnrdump 进行完整转储(并且仅转储新修订版),则任何修订版属性更改都不会反射(reflect)在您的转储中(例如修复 svn:log 修订版中的拼写错误)。 svnsync 允许使用 copy-revprops 子命令来完成此操作。

但这两种方法都不会是完整的备份。锁不会反射(reflect)在转储输出中(如果您不使用锁,可能并不重要)。您也不会获得 Hook 脚本和存储库配置文件的副本(尽管通常您在创建后不会对其进行太多更改(如果有的话))。

替代解决方案是 svnadmin hotcopy (它有自己的锁问题)或使用 svnadmin freeze 并使用某种文件系统快照。如果您可以完全访问原始服务器,我建议您采用此路线,因为您将拥有更完整的备份。一旦使用这些技术之一复制了存储库(或拍摄了快照),您就可以使用 rsync(或您无法使用的任何其他工具)将副本(或快照)复制到远程计算机。

关于svn - 使用 svnrdump 和 svnsync 进行 Subversion (SVN) 备份有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20363135/

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