将Linux SVN Repos转换为Windows SVN Repos

将Linux SVN Repos转换为Windows SVN Repos,linux,svn,version-control,visualsvn,Linux,Svn,Version Control,Visualsvn,我的任务是确定我们当前的Linux SVN服务器是否可以迁移到MS Windows 我已经找到并试用了一个名为VisualSVN Server的程序,它似乎可以做我们需要的一切,但我不知道是否可以将当前的Linux repos转换为在Windows服务器上运行 我是整个SVN应用程序的新手,因此请温和地回答我:) 谢谢 C.我个人成功地在Windows平台上使用了Linux创建的存储库,反之亦然 从平台的角度来看,不存在不兼容 对于每个平台上使用的Subversion软件版本,您仍然应该小心,因

我的任务是确定我们当前的Linux SVN服务器是否可以迁移到MS Windows

我已经找到并试用了一个名为VisualSVN Server的程序,它似乎可以做我们需要的一切,但我不知道是否可以将当前的Linux repos转换为在Windows服务器上运行

我是整个SVN应用程序的新手,因此请温和地回答我:)

谢谢


C.

我个人成功地在Windows平台上使用了Linux创建的存储库,反之亦然

从平台的角度来看,不存在不兼容

对于每个平台上使用的Subversion软件版本,您仍然应该小心,因为Subversion存储库格式随着时间的推移而不断演变

避免任何陷阱的最佳做法是完全转储存储库:

$ svnadmin dump /var/svn/repos > full.dump
并将其加载到目标服务器上:

C:\svn> svnadmin load newrepos < full.dump
C:\svn>svnadmin load newrepos

有关更多详细信息,请参阅。

从技术上讲,只要两台服务器使用相同的Subversion主版本(即1.6.x或1.5.x),您就应该能够将每个存储库及其底层文件结构从Linux服务器复制到Windows服务器并使用它而不会出现问题


然而,最好的建议是遵循SirDarius的答案,将每个repo转储到Linux服务器上,并在Windows上重新加载。

您可以迁移FSFS repo,而无需做任何事情(即使BDB也只需要稍作调整,只要CPU arch没有改变),但正如前面所述,“安全的方法”是转储和加载


我以前做过linux->windows迁移,您应该清楚,如果使用(默认)FSFS,您的性能将受到严重影响。对于许多文件/小文件来说,NTFS只是一个可怕的文件系统。我观察过类似“svn ls”的情况,发现性能下降了一个数量级。最好先测试一下,看看你是否还开心。

要将它加载到windows机器上,你需要 1.打开VisualSVN服务器 2.使用所需的(reponame)创建新存储库 3.opencmd 4.导航到c:\program files\VisualSVN Server\bin> 5.类型

svnadmin.exe加载“c:\[为存储库分配的路径]\(reponame)”<“c:\[转储文件所在的路径]\(reponame).dump
例如,如果我从linux机器上复制了(myrepo.dump)我的“c:\dump\u文件”,并且我为存储库位置分配了“c:\new\u svn”,那么该命令应该在cmd中

c:\program files\VisualSVN Server\bin>svnadmin load "c:\new_svn\myrepo_new" < "c:\dump_files\myrepo.dump"
c:\program files\visualvn Server\bin>svnadmin load“c:\new\u svn\myrepo\u new”<“c:\dump\u files\myrepo.dump”

但是,首先确保myrepo_new已在visualSVN服务器管理器中创建,您必须确保防火墙已关闭或防火墙允许svn通信。如果您仍然无法访问windows上linux开发的svn服务器,则必须确保您不在
c://
中在不同的驱动器中进行签出

@Matt:关于如何使用Linux/Apache SVN服务器和Windows域中用户的一组Windows工作站进行“单点登录”的任何指针?@Didier:mod_ldap:@Matt&@SirDarius:据我所知(并使用它!)Linux/Apache上的
mod_ldap
允许对Windows域控制器进行身份验证。它工作正常,但不允许“单点登录”。你有更精确的定义吗?我真的不明白你的意思,你应该提出你自己的问题;)@Didier,你正在寻找
mod_sspi
Nathan对NTFS提出了很好的观点。如果您确实打算在Windows上运行Subversion存储库,请确保转储和加载repo,并务必确保加载时打开分片。分片在Subversion的1.5.x和1.6.x版本中可用。@jgifford25:分片有助于提高性能(不谈浏览器的可视性)当你有成百上千的修订,但即使修订更少,NTFS对于任何文件操作(ACL等)都是非常慢的。(当Malcom Rowe第一次实现分片时,我在Windows上测试了他的分片脚本)。
c:\program files\VisualSVN Server\bin>svnadmin load "c:\new_svn\myrepo_new" < "c:\dump_files\myrepo.dump"