一、查看当前环境有没有SVN
[root@iz2zeec321ziwpk2e8ltfoz ~]# rpm -aq subversion
二、yum安装
[root@iz2zeec321ziwpk2e8ltfoz ~]# yum install subversion
三、配置文件库、账号密码
mkdir -p /application/svndata --文件库
mkdir -p /application/svnpasswd --账号密码
四、查看当前SVN是否启动A
[root@iz2zeec321ziwpk2e8ltfoz application]# ps -ef | grep svn
SVN默认端口号3690
[root@iz2zeec321ziwpk2e8ltfoz application]# netstat -lntup|grep 3690
五、新建SVN版本库(在svndata下创建一个版本库sadoc)
[root@iz2zeec321ziwpk2e8ltfoz ~]# svnadmin create /application/svndata/sadoc
创建完之后使用
[root@iz2zeec321ziwpk2e8ltfoz ~]# ll /application/svndata/
查看是否创建成功
六、修改配置文件
[root@iz2zeec321ziwpk2e8ltfoz sadoc]# cd /application/svndata/sadoc/
[root@iz2zeec321ziwpk2e8ltfoz sadoc]# cd conf/
[root@iz2zeec321ziwpk2e8ltfoz conf]# ll
total 12
-rw-r--r-- 1 root root 1080 Jul 27 13:47 authz --权限文件
-rw-r--r-- 1 root root 309 Jul 27 13:47 passwd -- 账号密码文件
-rw-r--r-- 1 root root 3090 Jul 27 13:47 svnserve.conf --主配置文件
先将主配置文件拷贝一份
[root@iz2zeec321ziwpk2e8ltfoz conf]# cp svnserve.conf svnserve.conf.ori
修改配置文件svnserve.conf修改为
anon-access = no --是否允许匿名访问
auth-access = write --访问权限
password-db = passwd --账号密码的权限
password-db = /application/svnpasswd/passwd --统一的账号密码的文件地址
authz-db = /application/svnpasswd/authz --统一的权限管理
修改完之后查看修改了什么
[root@iz2zeec321ziwpk2e8ltfoz conf]# diff svnserve.conf.ori svnserve.conf
19,20c19,20
< # anon-access = read
< # auth-access = write
---
> anon-access = no
> auth-access = write
27c27
< # password-db = passwd
---
> password-db = /application/svnpasswd/passwd
34c34
< # authz-db = authz
---
> authz-db = /application/svnpasswd/authz
七、把authz、passwd两个文件拷贝到配置全局的账号密码权限文件路径下
[root@iz2zeec321ziwpk2e8ltfoz conf]# cp passwd authz /application/svnpasswd/
[root@iz2zeec321ziwpk2e8ltfoz conf]# ll /application/svnpasswd/
total 8
-rw-r--r-- 1 root root 1080 Jul 27 14:10 authz
-rw-r--r-- 1 root root 309 Jul 27 14:10 passwd
八、把拷贝过来的配置文件改为非root用户看不到(保证安全)
[root@iz2zeec321ziwpk2e8ltfoz svnpasswd]# chmod 700 *
[root@iz2zeec321ziwpk2e8ltfoz svnpasswd]# ll
total 8
-rwx------ 1 root root 1080 Jul 27 14:10 authz
-rwx------ 1 root root 309 Jul 27 14:10 passwd
九、配置用户的账号和密码在passwd文件中
vi passwd
[users]
# harry = harryssecret
# sally = sallyssecret
kongzhi = kongzhi 等于号前面是账号,后面是密码。
提示:修改svnserve.conf的时候需要重启svn,修改passwd和authz文件不需要重启
[root@iz2zeec321ziwpk2e8ltfoz svnpasswd]# pkill svnserve
[root@iz2zeec321ziwpk2e8ltfoz svnpasswd]# svnserve -d -r /application/svndata/
十、配置权限文件authz
配置在groups下
规则
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
# [/foo/bar]
# harry = rw
# &joe = r
# * =
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
# [版本库:/项目/目录]
示例:
sagroup:kongzhi,gongli ----定义组(多个用户之间用,隔开)
[sadoc:/]
kongzhi: rw --对个人进行授权
@sagroup = r ----对组进行授权
接下来就可以在客户端操作了
链接地址格式:svn://+ip地址+svn版本库
例如svn://127.0.0.1/sadoc