1. 在虚机上安装svn服务器: yum install subversion -y
2. 安装成功后进行版本检查: svnserve --version
3. 在目录/home/svn/下新建项目docs: svnadmin create /home/svn/docs, 并在项目内分别建立两个文件夹和文件:/doc/test.txt, /src/test.txt
4. 进入 /docs/conf/文件夹内修改配置文件:
authz: 设置权限控制
passwd: 设置可以访问这个远程仓库的人的帐号密码
svnserve.conf: 配置文件
5. vim passwd: 增加用户名密码.
6. vi authz:增加如下图权限
[groups]
admin = admin
design = user1,user2
dev = user11,user22
[/]
@admin = rw[/doc]
@design = rw
@dev = r[/src]
@dev = rw
7. 修改svnserve.conf 配置文件
8. 修改完成后启动svn server,并查看是否启动成功,kill -9 pid可以停止svn server
9. 本机新建空文件夹docs, 右键选择 svn checkout, 输入仓库地址。
10. 输入用户名 user1,可以看到由于design用户没有根目录权限checkout failed
11. 重新输入 admin 用户后可以checkout成功。
12. 为了验证其他权限,把系统保存的账号清除重新输入: 仓库内 右键 -> settings
13. 在 /src 内 commit修改的test2文件,输入design用户 user1.
14. 由于配置的design用户没有操作/src文件夹的权限,显示 access denied, 无法commit.
15. 在/doc文件夹内commit修改的test1文件,dev用户有此文件夹的只读权限,无法进行文件修改,commit失败。
16. 重新输入拥有读写权限的design用户后就可以正常上传文件。
svn client端的安装使用可以参考另一篇: