一、SVN安装
1. yum install subversion :安装svn
2.安装成功后查看svn版本:svn --version
3.创建svn仓库:
(1) mkdir /svn (这里直接在根目录创建)
(2) svnadmin create /svn :创建svn仓库
ps:如果这里提示command not found ,则需要赋权限:chmod 777 /svn
二、svn配置文件
1. 进入svn目录:
2.进入conf目录:
3.会发现如下配置文件:
(1) svnserve.conf:对整个svnserve的进程进行配置
改成我这样就可以了:
anon-access = none 取消匿名访问
auth-access = write 控制经过验证允许访问库的用户的权限
authz-db = authz 指定当前库对应的用户权限配置文件
password-db = passwd 指定当前库所对应的用户配置文件
* 切记“#”号和空格都要删除*
(2) passwd:用来配置用户及密码
这一步配置用户名和密码,即“用户名 = 密码” ,记得“=”左右有一个空格
(3) authz:配置用户访问权限
这里有两种配置方式(配置权限都是根据已有的用户,即passwd中的指定的用户):
① 直接指定根目录的用户访问权限:
这种方式即给每个用户依次赋予读写的权限,没有的则不能访问,记得“=”左右都有空格的
②先把用户分组,规定哪些是管理员,哪些是普通用户等等,再根据用户组进行权限的分配:
现在[groups]将用户分组,admin是管理员,low是开发人员,test是测试人员
第二步就是将不同的目录赋予不同的权限,即指定的人才能看到(下图是svn中admin看的结构):
那现在我们接下来做的就是规定开发人员只能develop目录和ui设计目录,测试人员只能看到test目录和ui设计目录,admin都能看到:
@admin 代表是admin用户组
@admin = rw 代表admin用户组具有读写的权限
* = r 除了上述的用户组或者人员外其他都只有读的权限
[/develop] 代表根目录下的develop目录
@admin = rw 和 @low = rw ,* = 代表除了admin和low指定了权限外其他的人没权限看到
同理 [/test] 目录下代表admin和test指定了权限外其他的人没权限看到
没有配置的目录默认都可以看到
...
三、svn启动生效配置和停止
1.以上配置都配好后,接下来就是要使配置生效,启动svn:
svnserve -d -r /svn -d表示后台运行svn服务,-r是指定svn目录
2.启动后查看svn状态:
3.停止svn:
netstat -anp | grep svn 或者 ps -ef | grep svn
如上图可以看到pid为30278,
kill -9 30278 即可停止svn服务(kill -9 pid),修改完配置要停止,重新启动才会生效
四、效果图
test组用户组:
low用户组:
<OVER>