我想备份我的 subversion 存储库,这样如果服务器崩溃,我可以轻松地将它们恢复到其他地方。我的想法是使用命令svnadmin dump
将 SVN 转储到备份设备。
你会用这个吗?如果会,你会在命令中使用--incremental
and/or 吗?--deltas
答案1
svnadmin dump 是正确的方法。
--incremental 和 --deltas 的使用取决于您的存储库的大小和服务器的功能:如果您有足够的空间,每次都进行完整备份,这是最容易保存和回放的。如果运行速度太慢,请使用 --incremental。如果此备份太大,请使用 --deltas。
重要提示:无论您进行什么备份,都必须将其回放至测试服务器以查看其是否有效以及如何有效。
答案2
git svn clone
您可以对 repo进行操作,这将提供一种简单的方法来创建带有历史记录的完整备份,您可以非常轻松地使用该备份进行更新git svn rebase
,另外,备份 repo 将比原始 repo 小。
答案3
制作备份的最简单方法是使用同步。这会将您的提交重放到备份存储库,因此如果主存储库崩溃或无法访问,您可以切换到备份存储库。您还可以强制在提交后挂钩中进行同步,以便始终保持最新状态。
唯一需要注意的是,当您最初创建备份存储库时以及进行更改时,必须将钩子和类似配置(例如用户、密码)复制到备份存储库。Svnsync 仅在初始创建后增量复制修订版本。