我已按照指南设置 Subversion 服务器,但似乎无法访问我创建并从基于 Windows 的 SVN 存储库导入的任何存储库。
过去,我安装了一个名为 Visual SVN 的 Windows 应用程序,它允许我在 Windows 计算机上运行 SVN 服务器。我为它创建了很多存储库,其中包含许多项目,现在我想将所有这些迁移到我的 Ubuntu 服务器中。
我跟着本指南,并成功安装了 SVN,添加了用户并配置了 Apache 2 配置文件,如下所示:
<Location /svn>
DAV svn
SVNPath /windows/mediahdd1/Repositories/Spring
AuthType Basic
AuthName Spring projects
AuthUserFile /etc/subversion/passwd
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
</Location>
我还只是将我的存储库(从我的 Windows 机器)文件夹移动到/windows/mediahdd1
.
我首先使用上面链接的相同指南创建了一个虚拟存储库,它创建了与我在自己的 Windows 存储库中看到的完全相同的文件夹和文件,因此我认为我可以轻松导入以前的存储库文件夹并且它应该可以工作。
无论如何,我遇到的主要问题是我无法使用 HTTP 或 HTTPS 协议从另一台计算机访问我的 SVN 服务器。
我可以启动 Putty 会话并使用它来访问它SVN co file:///windows/mediahdd1/Repositories/Spring
,它会返回与我的项目相关的文件列表。
我怎样才能远程访问这个?我需要运行 SVN 还是它正在运行?该指南没有解释如何运行 SVN 服务器,它只说明如何安装、创建存储库、创建用户和可用于访问它的不同协议,但如何从 TortoiseSVN 远程访问它? HTTP 链接不起作用,这就是我通常用来从 TortoiseSVN 或其他 SVN 客户端访问 SVN 存储库的方法。
有什么建议吗?我需要更改端口吗? SVN的默认端口是什么?
答案1
改成。AuthName Spring projects
AuthName "Spring projects"
如果参数有空格,则需要用引号引起来。
更新:
由于 HTTP 访问问题不仅仅是语法问题,因此如果您愿意svn://
访问,我会建议您放弃。这关联展示如何svnserve
在 Ubuntu 上进行设置。
既然你已经安装了它,你可以浏览一下开头的部分,然后从它运行的地方继续svnserve -d --foreground -r /var/repos
。当然,您可以替换/var/repos
为/windows/mediahdd1/Repositories
,并且您可以从客户端作为 访问您的存储库svn://<your_host>/Spring
。
希望这个对你有用。