在Windows上安装SVN服务器

3

我希望在一台Windows 7 64位机器上安装一个SVN服务器(只为我自己使用)。

我使用了Slik SVN,并设置了一个服务:

sc create svnserver binpath= "C:\Program Files\SlikSvn\bin\svnserve.exe --service -r H:\svn\repository" displayname= "Subversion" depend= Tcpip start= auto

这个服务在服务列表中被列出,但不能启动:

C:\Windows\system32>sc create svnserver binpath= "C:\Program Files\SlikSvn\bin\s
vnserve.exe --service -r H:\svn\repository" displayname= "Subversion" depend= Tc
pip start= auto
[SC] CreateService ERFOLG

C:\Windows\system32>net start svnserver
Der Dienst reagiert auf die Kontrollfunktion nicht.

有什么想法,为什么这个不起作用?

1
你可以通过 file:/// 协议访问存储库,甚至无需安装服务器。如果你是一个独立开发者,坚持使用这种方法是有意义的 :) - bahrep
你确定 binpath 也需要参数吗?回答自己的问题:我认为可以。但是路径名中的空格没有被转义。尝试使用替代名称或在路径名中不带空格的符号链接/联接。 - cxxl
3
这与你的问题无关,但如果你使用的是Windows操作系统,你可能想尝试使用Visual SVN Server(http://www.visualsvn.com/server/)——它非常易于安装和使用,并且是免费的。 - Stuart Lange
2个回答

5
从TortoseSVN文档的Svnserve Based Server页面,“运行svnserve作为服务”章节。你的路径名称中有空格

如果路径中包含空格,你必须使用(转义)引号将路径括起来,像这样:

sc create svnserve binpath= "
    \"C:\Program Files\Subversion\bin\svnserve.exe\"
    --service --root c:\repos" displayname= "Subversion"
    depend= tcpip start= auto

1

您提到您想要安装一个SVN服务器只为自己使用,也就是说您将是该系统的唯一用户。那么在这种情况下安装SVN服务器的目的是什么呢?

您是否决定设置svnserve,因为您认为这是使客户端访问您的存储库最简单的方法? 如果是这样,那么您错过了更简单的访问存储库的方法:

  • 您可以直接访问存储库(在本地磁盘上)。 也就是说,您可以使用以下URL访问存储库:file:///C:\Repositories\MyProject1file:///C:\Repositories\MyProject1\trunk\repo-folder

  • 如果您需要创建一个干净的存储库,可以使用命令行:

    svnadmin create C:\Repositories\MyProject1

您不需要svnserve或Apache HTTP服务器来完成这些操作。

我可以同意Subversion捆绑软件(如VisualSVN Server)使得维护您的代码库变得更加容易,并且理解为什么会在个人电脑上安装它,甚至使用本地HTTPS访问。然而,我完全不明白为什么有人想在Windows上设置基于svnserve的个人SVN服务器!在我看来,这没有真正的用例。最好考虑使用专用的SVN软件包或直接使用file://访问。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接