我有两个VisualSVNServer:主(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是否可以用一个命令在镜像中同步所有项目?
发布于 2015-12-19 12:12:57
如果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/实际上是一个虚拟目录,它是两个独立的存储库的公共父目录。如果是这样的话,你不能这样做。颠覆根本不允许这样做。
编辑:基于后续编辑的,您可以从一个公共父库(根)获得多个存储库。这是第二段的场景。您不能用单个svnsync同步所有存储库--您必须单独执行每个存储库。
那么,你怎么能分辨出区别呢?如果svn info http://127.0.0.1/svn/MyProject1和svn info http://127.0.0.1/svn/MyProject2都返回Repository Root报告的相同值,则运行Repository Root,则第一段应用。如果您获得与Repository相同的URL (IOW,Repository Root是MyProject1的http://127.0.0.1/svn/MyProject1和MyProject2的http://127.0.0.1/svn/MyProject2,那么它们是单独的存储库。
https://stackoverflow.com/questions/34369605
复制相似问题