在Windows 2008服务器上成功运行subversion多年之后,我最近搬到了Windows 8.1,主要是因为该机器还为我的家庭网络提供视频(工作正常),并且因为Windows 8在我的平台上提供的节能比Windows 2008服务器做了。到目前为止,非常好。
然后我尝试重新安装Subversion。我打算使用内置服务器应用程序svnserve.exe
。我下载了最新的Windows软件包,安装了它(成功),并配置了一个服务(svnserve --service ...
),我可以使用Windows服务管理控制台成功启动它。端口80已被不同的应用程序占用,所以我让subversion选择3690,这对我来说很好。我使用netstat
确认svnserve.exe
绑定到端口TCP:3690,列出了OK。为了清除一个潜在的障碍,我还禁用了Windows防火墙。
然后我在本地使用svnadmin
创建了一个名为“test”的示例存储库,也成功了,硬盘上出现了一个subversion文件结构。
当我尝试使用本地浏览器(Firefox)访问存储库时出现问题,尝试连接到URL
http://127.0.0.1:3690[/svn|/svn/test]
这三个人都给了我相同的密码响应:
(成功(2 2()(edit-pipeline svndiff1 absent-entries commit-revprops depth log-revprops atomic-revprops partial-replay inherited-props ephemeral-txnprops file-revs-reverse)))
不知怎的,我已经预料到了一个颠覆GUI。
通过浏览器从远程计算机连接显示同样无用的文本行。
使用我常用的Tortoise客户端从远程计算机连接时会显示以下消息:
无法连接到网址“http://xxx.xxx.xxx.xxx:3690/svn/test的存储库 运行上下文时出错:服务器意外关闭了连接
我尝试将--log-file
选项添加到svnserve
,确实在启动服务时会出现一个日志文件,但它是空的并且仍为空。
尝试使用svnserve -X
而不是将其作为服务运行会显示完全相同的行为。
答案 0 :(得分:1)
只是为了帮助另一个初学者遇到同样的问题......我终于找到了问题:我只是使用了错误的客户端,svnserve不支持Web浏览器。使用Tortoise客户端,并提供正确的前缀(svn:127.0.0.1 / ...)就是我所要做的。
长版:
如果想要使用简单,可靠,快速但纯文本和专有协议的svnserve服务,他需要使用专有客户端,如Tortoise,以及svn:前缀而不是http / https: ,没有端口,比如
的svn:// mysvnserver / testrepo
如果需要,甚至可以重新配置svnservice以便稍后使用身份验证和加密。 svnserve不支持Web浏览器,如果试图像我一样使用Web浏览器访问svnserve,那么他会将svn协议的内部转移到屏幕上。
如果想要使用他的网络浏览器,http / https协议和细节,如基于用户友好浏览器的界面和一些远程管理功能,他不能使用svnserve,而是安装Web服务器服务(如apache)和配置if是否与subversion一起使用。
所以最后我的问题与Windows 8无关。多年前我走了apache路径,但我现在认为内置的svnserve服务已经足够满足我的需求了。
阿明。