SVN svnsync所有回购项目



我有两个VisualSVNServer:master(http://example.com/svn)和镜像(备份)

在每个服务器中都有相同的存储库结构,有100个项目(20 GB):

D:Repositories
               MyProject1
               MyProject2
               MyProjectN

目前,我为每个项目手动同步镜像服务器,例如:

svnsync synchronize http://127.0.0.1/svn/MyProject1 http://example.com/svn/MyProject1
svnsync synchronize http://127.0.0.1/svn/MyProject2 http://example.com/svn/MyProject2
svnsync synchronize http://127.0.0.1/svn/MyProjectN http://example.com/svn/MyProjectN

是否可以用一个命令同步镜像中的所有项目?

如果http://127.0.0.1/svn/存储库,则可以使用svnsync synchronize http://127.0.0.1/svn/MyProject1 http://example.com/svn

然而,我怀疑事实并非如此,http://127.0.0.1/svn/实际上是一个虚拟目录,它是两个独立存储库的公共父目录。如果是这种情况,你就不能这样做。子版本根本不允许。

编辑:根据您随后的编辑,您有多个存储库由一个共同的父级(root)提供服务。这是第二段的情景。不能用一个svnsync同步所有存储库,必须分别同步每个存储库。

那么,你该如何区分呢?运行svn info http://127.0.0.1/svn/MyProject1svn info http://127.0.0.1/svn/MyProject2如果两者返回的Repository Root值相同,则第一段适用。如果您获得与存储库根目录相同的URL(IOW,Repository Root对于MyProject1http://127.0.0.1/svn/MyProject1,对于MyProject2http://127.0.0.1/svn/MyProject2,则它们是独立的存储库。

最新更新