安装SVN服务
Linux下安装软件是一如既往的so easy。
首先老样子,先更新一下软件列表
# sudo apt-get update
然后安装软件包
# sudo apt-get install subvision
搞定。
创建版本库
版本库也就是SVN作为版本管理服务器,集中存放各版本文档及相关信息的场所。
有些朋友喜欢在/home
下放置配置信息和版本库,有些朋友喜欢在/srv
下。home就是个人目录,srv就是server的简写,也就是服务器类程序的目录,例如Ubuntu下安装FTP服务器vsftpd之后,就会在/srv
目录下新建ftp
文件夹。
其实都可以啦,这里以在/srv
目录下为例,新建/srv/svn
目录
# sudo mkdir /srv/svn
# cd /srv/svn
# sudo mkdir test
这里的test就是svn管理的其中一个版本库,查看库中自动生成的文件:
# ll
total 32
drwxr-xr-x 6 root root 4096 Feb 23 21:54 ./
drwxr-xr-x 3 root root 4096 Feb 23 21:53 ../
drwxr-xr-x 2 root root 4096 Feb 24 00:18 conf/
drwxr-sr-x 6 root root 4096 Feb 23 21:54 db/
-r--r--r-- 1 root root 2 Feb 23 21:54 format
drwxr-xr-x 2 root root 4096 Feb 23 21:54 hooks/
drwxr-xr-x 2 root root 4096 Feb 23 21:54 locks/
-rw-r--r-- 1 root root 246 Feb 23 21:54 README.txt
其中conf/
目录就有该版本库的配置信息。
配置版本库
首先编辑svnserve.conf配置文件:
[general]
#匿名用户不可读
anon-access = none
#权限用户可写
auth-access = write
#密码文件为passwd
password-db = passwd
#权限文件为authz
authz-db = authz
找到以上4个配置项,修改即可。然后再依次配置上边提到的passwd和authz配置文件。
编辑passwd,增加一行从而新建一个用户:
[users]
# harry = harryssecret
# sally = sallyssecret
svntest1 = pass123
svntest2 = pass123
svntest3 = pass123
这样就新建了三个用户,它们的密码是pass123,明文的密码。
然后再设置这些用户的权限,权限设置是在authz文件中,编辑它:
[groups]
admin = svntest1
readerer = svntest2, svntest3
[/]
@admin = rw
*=r
SVN可以通过用户组的概念来管理用户权限,比如svntest1具有读写权限(r
是read,w
是write),而svntest2和svntest3只有读的权限。当然,这里的admin只是一个组名,你可以配置成developer、阿猫阿狗之类的都可以。
启动SVN服务
配置完成之后就可以启动SVN服务了:
# svnserve -d -r /srv/svn/
-d 是指已守护模式启动;
-r 即指定svn版本库的目录。
然后在客户端中使用如下地址就可以访问了:
svn://< host >/test