[原创]Linux下的Subversion安装与配置
前言
网上关于Subversion(以下SVN)的介绍已经很多了,这里不再赘述,打算深究的朋友请Google一下。据笔者测试,在Windows上创建SVN服务器的时候往往需要安装在Server级的发行版本上,原因是Windows的桌面版本默认有连接数限制,一般只能用于5人以下的小团队,且所有人不能同时连接到服务器进行操作。为了回避这一问题,笔者将目标锁定在了Linux平台上,主要基于以下的考虑:
确认Linux版本
首先需要做的是确认Linux的版本是否最新。注:如果您在工作环境中业已存在的计算机上进行本操作的话,请提前与系统管理员进行确认,因为这里的软件升级操作,可能会对您已经部署的其他应用产生影响。
su - root password: ****
apt-get update apt-get upgrade
apt-get install subversion
apt-get install apache2 libapache2-svn
mkdir /SVNRoot
svnadmin create /SVNRoot/ProjectName
chown -R www-data:www-data /SVNRoot
配置
这个文件中已经以注释的形式给出了一个良好的例子,笔者这里仅给出最小限的设定放案。
<Location /svn> DAV svn SVNParentPath /SVNRoot AuthType Basic AuthName "Subversion Repository" AuthUserFile /etc/apache2/dav_svn.passwd AuthzSVNAccessFile /etc/apache2/dav_svn.authz </Location>
htpasswd -c /etc/apache2/dav_svn.passwd 用户名注:上面命令中的参数"-c"代表创建密码文件,仅在第一次执行时使用。
输入两次密码以后用户便创建成功。依此类推,添加团队中的所有人员。
我们这里创建7个用户:
admin:超级用户
TeamLeader1:User1/User2
TeamLeader2:User3/User4
[groups] superUser=admin TL=TeamLeader1,Teamleader2 Dev=User1,User2,User3,User4 [ProjectName:/trunk] @superUser=rw @TL=r @Dev=r [ProjectName:/branch] @superUser=rw @TL=rw @Dev=rw [ProjectName:/tag] @superUser=rw @TL=rw @Dev=r
/etc/init.d/apache2 reload
连接测试
OK,到了这里SVN服务器的创建就告一段落了。您可使用IE或者任意SVN客户端连接此SVN服务器。连接地址为:http://服务器地址/svn/ProjectName