在Ubuntu上使用Web Access安装Subversion
时间:2020-01-09 10:45:16 来源:igfitidea点击:
本文介绍如何使用apache模块安装Subversion,以便可以从公用网络上的其他系统轻松访问它。如果我们想要一个更安全的svn服务器,则可以使用svnserve + ssh,本文中没有介绍。
要安装Subversion,请打开终端并运行以下命令:
sudo apt-get install subversion libapache2-svn
尽管我们应该选择一个具有足够空间的位置,但我们将在/ svn中创建Subversion存储库。
sudo svnadmin create /svn
接下来,我们需要编辑Subversion Webdav模块的配置文件。我们可以根据需要使用其他编辑器。
sudo gedit /etc/apache2/mods-enabled/dav_svn.conf
配置文件中的Location元素规定了可以从中进行颠覆的根目录,例如:http://www.server.com/svn
<Location /svn>
无需注释DAV行以启用dav模块
# Uncomment this to enable the repository, DAV svn
SVNPath行应设置为使用thesvnadmin命令创建存储库的位置。
# Set this to the path to your repository SVNPath /svn
下一部分将允许我们打开身份验证。这只是基本身份验证,因此不要认为它非常安全。密码文件将位于AuthUserFile设置将其设置为最好将其保留为默认值的位置。
# Uncomment the following 3 lines to enable Basic Authentication AuthType Basic AuthName "Subversion Repository"; AuthUserFile /etc/apache2/dav_svn.passwd
要在存储库上创建用户使用,请使用以下命令:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd <username>
请注意,仅应在第一次创建用户时使用-c选项。之后,我们只需要使用-m选项,该选项指定密码的MD5加密,但不重新创建文件。
例:
sudo htpasswd2 -cm /etc/apache2/dav_svn.passwd data New password: Re-type new password: Adding password for user data
通过运行以下命令来重新启动Apache:
sudo /etc/init.d/apache2 restart
现在,如果我们在浏览器中访问http://www.server.com/svn,则应该看到已对存储库启用了匿名读取访问,但是提交访问将需要用户名。
如果我们要强制所有用户进行身份验证,甚至可以进行读取访问,请在上方的AuthUserFile行下方添加以下行。更改此行后,重新启动apache。
Require valid-user
现在,如果刷新浏览器,将提示我们输入凭据:
我们现在拥有一个可以正常工作的Subversion服务器!