Linux搭建svn服务器
本次使用的是Linux发行版:CentOS 7.2
1.安装svn
# yum install subversion
1.新建一个用于存储svn文件的目录
# mkdir /svn
2. 新建一个资源仓库
# svnadmincreate /svn/project
# ls -l/svn/project total 24
drwxr-xr-x 2 root root 4096 Jun 15 09:10 conf
drwxr-sr-x 6 root root 4096 Jun 15 09:10 db
-r--r--r-- 1 root root 2Jun 15 09:10 format
drwxr-xr-x 2 root root 4096 Jun 15 09:10 hooks
drwxr-xr-x 2 root root 4096 Jun 15 09:10 locks
-rw-r--r-- 1 root root 229Jun 15 09:10 README.txt
用途说明:
hooks:放置hook脚本文件的目录
locks:放置subversion的db锁文件的db_logs锁文件的目录
format:是一个文件,只放了一个整数,表示当前文件库配置版本号
conf:放置仓库的配置文件(访问账号,权限等)
db:版本数据存储目录
db/fs-type: 版本数据库真实存储格式,有fsfs和bdb两种
db/revprops: 记录版本属性
db/revs: 版本数据库存储真实目录
db/uuid: 存储版本数据库唯一标识号
db/txn-current: 记录当前事物
3. 配置svn服务的配置文件conf/svnserver.conf
# vim conf/svnserver.conf
[general]
anon-access = none
auth-access = write
password-db = /svn/project/conf/passwd
authz-db = /svn/project/conf/authz
realm = My Test Repository #这是个提示信息
4. 添加访问用户及密码
# vim conf/passwd
[users]
test1 = 123456
test2 = 123456
5. 对新用户授权
# vim conf/authz
[groups]
admin = test1
user = test2
[/]
@admin = rw
@user = r
*=
/ 表示对根目录(即/svn/project目录)下的所有子目录范围设置权限;
[/test] 表示对资料库中test项目设置权限;
*=表示除了已设置的用户组之外,其他用户均为空权限
注:权限配置文件的修改立即生效,无须重启
6. 启动服务
CentOS 7.2的启动服务放在/usr/lib/systemd/system 中,默认仓库为/var/svn
这里需要将/etc/sysconfig/svnserve中的/var/svn改成/svn/project
启动服务: # systemctl start svnserve
2.使用客户端连接
打开TortoiseSVNRepository Browser工具
在URL中输入:svn://192.168.3.23回车,输入用户名和密码登陆