我有一个代码库位于欧洲,我从亚洲访问这个代码库。该代码库非常庞大,有时需要下载整个代码库,这变得非常麻烦。
我想知道是否有这样的解决方案。
我希望有一种解决方案,“我将在本地拥有一个svn服务器,它将与主svn同步并作为本地托管的svn为我的团队提供服务。”
谢谢!
Munim
我有一个代码库位于欧洲,我从亚洲访问这个代码库。该代码库非常庞大,有时需要下载整个代码库,这变得非常麻烦。
我想知道是否有这样的解决方案。
我希望有一种解决方案,“我将在本地拥有一个svn服务器,它将与主svn同步并作为本地托管的svn为我的团队提供服务。”
谢谢!
Munim
您还可以尝试使用自 SVN 1.5 版本开始支持的写入代理(write-through-proxy),这种方法很有效。
使用此设置,您需要一个主仓库和一个从仓库。
从仓库充当本地读取缓存,而提交将被代理到主服务器并同步回来。
这个解决方案随附于 Subversion / Apache 中。
请查看此svndevelopers博客以获取更多详细信息。或者阅读绝妙的 SVN 书籍,或最后是Subtrain 管理培训演示。
这里有一篇关于如何设置的不错文章:
http://wordaligned.org/articles/how-to-mirror-a-subversion-repository
总体思路是使用 svnadmin hotcopy
进行复制而无需停机,可以由后提交挂钩或定时器触发。
另一个选项在这里讨论:
http://blogs.collab.net/subversion/2007/08/mirroring-repos/
就是使用 SVN 同步进行同步,而不是复制,使用 svnsync synchronize
命令。
svnsync
几乎肯定是你的选择。你可以设置一个 post-commit 钩子来为你完成同步。第二个链接应该会给你一个相当不错的指南。 - John Gietzensvnsync
可以是一个解决方案,但我想要类似于 TFS Proxy
的东西。 - Abdul Munimsvnsync
是最接近你能达到的。使用 scvsync,你也可以接近一些。 - John Gietzen除了使用svnsync之外,您可以尝试来自Wandisco的商业解决方案。
使用VisualSVN Server尝试多站点存储库复制。这正是您一直在寻找的。
多站点存储库复制功能实现了经典的主/从复制架构,允许您在欧洲主代码库位置设置一个主存储库,并在其他位置设置多个从存储库。
与标准的写入代理解决方案相比,在多站点存储库复制功能中:
主存储库和从存储库看起来和行为就像一个常规的可写Subversion存储库,
主从之间的复制是自动透明的,
支持高级身份验证机制,
它易于设置,在VisualSVN Server Manager MMC控制台上通过最小配置即可开箱即用。