我希望使用svnsync
来创建我的svn存储库的备份副本。
svnsync命令复制所有版本化文件及其文件 服务员svn属性。它不会复制钩子或conf 来自源存储库的目录,所以我需要这样做 手动
我已经编写了这个批处理脚本来创建备份存储库:
setlocal enableextensions enabledelayedexpansion
:: create local backup project
svnadmin create C:\Repositories\Test
:: initialize local backup project with remote project
svnsync initialize https://local.com/svn/Test https://remote.com/svn/Test
:: get remote info project and store in info.txt
svn info https://remote.com/svn/Test>info.txt
:: get remote UUID project from info.txt
set UUID=
for /f "delims=" %%a in (info.txt) do (
set line=%%a
if "x!line:~0,17!"=="xRepository UUID: " (
set UUID=!line:~17!
)
)
:: set local UUID project with the remote UUID project
svnadmin setuuid C:\Repositories\Test %UUID%
:: sync local and remote project
svnsync sync https://local.com/svn/Test https://remote.com/svn/Test
endlocal
我编写了这个批处理脚本,用于将备份存储库与主存储库同步(每小时计划):
svnsync sync https://local.com/svn/Test https://remote.com/svn/Test
说,如果我通过svnsync设置镜像svn repo,如果我的生产svn 服务器崩溃了,那我怎么能通过恢复生产svn repo 镜子?可能吗?
有人可以建议使用svnsync备份生产服务器的最佳做法吗?
答案 0 :(得分:1)
有几种方法比使用svnsync
更好:
当您需要为Subversion存储库提供实时备份或DR服务器时,请考虑使用Multisite Repository Replication (VDFS)功能部署副本(从属服务器)。有关更详细的入门指南,请考虑KB136: Getting started with Multisite Repository Replication和KB93: Performing disaster recovery for distributed VDFS repositories文章。
要备份Subversion存储库时,请使用内置的Backup and Restore功能。备份和还原功能可帮助您每天备份任何大小的存储库,并且对性能和用户操作没有任何影响。而且,VisualSVN Server中的“备份和还原”功能非常易于设置和维护。请阅读文章KB106: Getting Started with Backup and Restore以获得设置说明。
也不要忘记创建后台验证作业。请参阅文章KB115: Getting started with repository verification jobs。