Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
与2台SVN服务器相同的代码工作副本_Svn - Fatal编程技术网

与2台SVN服务器相同的代码工作副本

与2台SVN服务器相同的代码工作副本,svn,Svn,是否可以使用同一工作副本并将其放入两个不同的SVN服务器(提交、更新等)?是的,您可以使用重新定位(谢谢,Peter)命令将工作副本连接到第一个存储库,在那里提交,然后重新定位到第二个存储库并在那里提交。最好先将您的工作副本文件夹复制到其他地方。如果有多人与不同的svn服务器通话,您将遇到问题。这两台服务器不会互相交谈以确保它们没有冲突,使用相同的版本号等。至少,我不知道有任何svn黑客会这样做。(还有其他基于svn的分布式版本系统,例如。) 这里的核心目标是什么?您是否可以只推送到一台服务器,

是否可以使用同一工作副本并将其放入两个不同的SVN服务器(提交、更新等)?

是的,您可以使用重新定位(谢谢,Peter)命令将工作副本连接到第一个存储库,在那里提交,然后重新定位到第二个存储库并在那里提交。最好先将您的工作副本文件夹复制到其他地方。

如果有多人与不同的svn服务器通话,您将遇到问题。这两台服务器不会互相交谈以确保它们没有冲突,使用相同的版本号等。至少,我不知道有任何svn黑客会这样做。(还有其他基于svn的分布式版本系统,例如。)

这里的核心目标是什么?您是否可以只推送到一台服务器,然后使用post-commit钩子将更改复制到另一台服务器,这样就可以方便地从另一个位置进行只读访问


您提供的关于您想要做什么的详细信息越多,我们就越有可能帮助您。

分布式版本控制系统,如Mercurial、Bazaar或Git更适合此类任务。您可以在任意数量的存储库中推送更改。

这是可能的,但非常快速。我现在不得不这么做,因为我的ISP已经脑死亡,我很难到达欧洲的各个数据中心。因此,我推送到我在加拿大的服务器,它会立即推送到真正的存储库

有两次,我的修订号是(+1),这意味着我的下一个svn变得非常有趣

所以,我只是使用SSHFS(一个保险丝安装)在加拿大副本上就地编辑文件,然后直接提交。这仍然是一种真正的痛苦,也是我如此热爱Mercurial的众多原因之一。


首先,向每台服务器签出您的代码,然后制作一个脚本svn_up.sh,如下所示:

ssh  server_one_ip_address svn up /path_to_working_copy_on_server1
ssh  server_two_ip_address svn up /path_to_working_copy_on_server2

使用sh svn_up.sh而不是svn up

好问题,+1,你会惊讶有多少人因为这样或那样的原因不得不这么做。我得到了“存储库UUID不匹配”错误:(存储库的登录凭据是否不同?这不起作用!每个存储库都有自己的UUID,因此您无法切换--重新定位到不同存储库的新URL。除非您操作UUID以进行匹配(这不是一件好事)我认为你是对的,重新安置是正确的。对我来说,“重新安置”也给UUID带来了问题:(