Subversion双向提交和同步

我有一个颠覆1.6,它有一个回购和镜像回购。 镜像回购是只读的。 有没有办法在这两个方向的这些回购提交和同步

你看过http://www.wandisco.com/subversion/replication ? 他们做了一系列与多站点SVN相关的产品,但是他们花费了。 我从来没有尝试过,但是这是我最后一次find这个结果的地方。

你将会遇到一大堆试图手动完成的问题,但最接近的是:

  1. 在每个站点维护一个“合作伙伴”SVN仓库列表
  2. 将预提交钩子添加到两个仓库中,以便locking伙伴列表中的其他仓库:
    1. 检查是否存在信号量文件,保存是否存在
    2. 在每个伙伴服务器上创build信号量文件
  3. 将post-commit挂钩添加到repos:
    1. 检查出临时文件夹工作副本中的最新版本
    2. svn switch --relocate将工作副本重新分配给每个伙伴
    3. 在重新安置的回购处承诺
    4. 删除信号量文件
  4. 通过对svnadmin dump使用md5sum定期validation每个回购
    1. 在校验和不匹配的情况下,select一个来打乱其他人
    2. 对所有合作伙伴进行大量的备份,以防有人抱怨这个破坏者,而且你需要修改版本

我会救你的力气 – 这不太好。 一个绝对的母马设置和充满竞争条件(你只是不能同步信号文件足够快)。

简短的回答:

较长的答案:您可以使用“svnadmin dump-transfer dump-删除repo -recreate回购 – svnadmin加载”的path,但它的噩梦

PS:在你的情况下,DVCS似乎更自然的解决scheme

简短的回答: 是的

您可以使用VisualSVN Server的多站点存储库复制function ,该function允许在多个存储库之间进行双向数据复制。 该function基于VisualSVN分布式文件系统技术, 可让您的从属存储库成为可写入的