是否有任何代理行为像连接到远程存储库的“虚拟”SVN服务器?

时间:2011-12-09 17:05:15

标签: svn proxy

我有一个远程SVN存储库,我无权管理。该存储库服务器除常规SVN操作外没有其他功能,并且它不包含任何(有用的)SVN挂钩。我有兴趣在远程存储库中设置某种本地代理(不确定它可能被调用的方式)(例如,当有人将更改提交到本地“虚拟”存储库时,本地服务器必须提交如果这样的代理可以支持SVN挂钩,那么我可以配置我的本地(或LAN)SVN挂钩组。

所以我正在寻找的是,就像一个普通的代理服务器一样,就像一个“虚拟”SVN服务器。它是否可能(特别是对于Windows)?

提前致谢。

P.S。对不起,可能没有那么明确的解释。

1 个答案:

答案 0 :(得分:0)

至少有两个人知道这个问题的解决方案。

第一个是使用从属端SVNMasterURI指令的远程主服务器和本地从属SVN服务器的详细配置。据我所知(目前我还没有尝试过),考虑到proposed solution,这个解决方案可能会有一些困难:使用svnsync(它可能会导致与主存储库的绝对同步 - 这并不总是精细);主服务器specific configuration,但由于没有管理主存储库的权限,这并不总是可行的;奴隶库工作的一些possible problems;据我了解SVNMasterURI指令的范围,整个从服务器(不是单个从属存储库)完全提交给主服务器。

第二种可能更简单的解决方案是使用Mercurial,其中安装了hgsubversion扩展,configuring共享的本地Mercurial存储库,以及enabling commit.autopush挂钩。不幸的是,这个解决方案对我来说至少有一些问题:我们的开发团队不会非常乐意学习Mercurial只是为了使用构建/电子邮件/测试钩子(这些变化过于激进,肯定+并不意味着拒绝掌握SVN意识形态);根据我的理解,奴隶Mercurial存储库修订号与主Subversion存储库修订号不匹配,让我们感到困惑。