我应该把我的svn仓库放在哪里?

我正在尝试为Web开发设置一个testing服务器。 我从来没有这样做过,也没有使用过svn

当我从我的networking上的任何一台计算机上访问http://linux-server/ ,它会将我带到我的Linux机器的/var/wwwpath。

我正在使用svn来备份/var/www

目前我的svn版本库位于/usr/local/svn/svn_repo

如果我运行:

$ svn list -v -R file:/// usr / local / svn / svn_repo

它输出:

  11 root Jun 17 17:03 ./ 1 root May 25 14:05 branches/ 1 root May 25 14:05 tags/ 11 root Jun 17 17:03 trunk/ 11 root Jun 17 17:03 trunk/www/ 11 root 2525 Jun 17 17:03 trunk/www/index.php 4 root May 25 16:48 trunk/www/test/ 4 root 105 May 25 16:48 trunk/www/test/index.php 

其中trunk/www/与系统上的/var/www相同。

但我希望能够从networking上的另一台机器访问我的存储库。 类似于http://linux-server/svn

也许我正在考虑这个错误,但在我看来,为了做到这一点,我需要将存储库移动到/var/www/svn/目录。 但是那么版本库不会自行备份? 还是可以的,只要我从来不打电话:

svn add / var / www / svn

我有点困惑。

不,你是对的,你不应该在自己的工作副本中的存储库。 你可以做的是使用一个Alias指令(如果你使用的是Apache)将目录/usr/local/svn/svn_repo到URLpath/svn

 Alias /svn/ /usr/local/svn/svn_repo/ 

这样,当你将浏览器指向http://linux-server/svn ,Apache会向你显示/usr/local/svn/svn_repo ,但该目录实际上不在/var/www 。 您还需要启用Apache来从该目录提供文件,因此将其放在您的Apacheconfiguration文件中:

 <Directory /usr/local/svn/svn_repo> Order allow,deny Allow from all Options +Indexes </Directory> 

请注意,您还应该使用WebDAVconfigurationApache,以便您可以通过HTTP访问存储库(否则Apache会向您显示存储库文件的原始内容,这在眼睛上并不会特别容易)。

在/ usr / local / svn中填充svn回购听起来很好。

然后,您需要configuration您的Web服务器来访问这些文件,如下所述: http : //svnbook.red-bean.com/en/1.0/ch06s04.html

但是,如果你以前从未使用svn,现在就不要开始。 而不是为Git拍摄。 掌握时间可能稍长一些,但在各方面都更好。 在Git6个月之后,我再次想到和Subversion一起工作。