pm部门要重新新增人,好久没玩svn竟然忘记,记录下.
安装配置及客户端的使用
参考
http://zengestudy.blog.51cto.com/1702365/1791678
安装svnserver
mkdir -p /opt/svn
svnadmin create /opt/svn/repo
[root@localhost repo]# ll
total 24
drwxr-xr-x. 2 root root 4096 Jun 15 20:05 conf
drwxr-sr-x. 6 root root 4096 Jun 15 20:26 db
-r--r--r--. 1 root root 2 Jun 15 19:08 format
drwxr-xr-x. 2 root root 4096 Jun 15 19:08 hooks
drwxr-xr-x. 2 root root 4096 Jun 15 19:08 locks
-rw-r--r--. 1 root root 229 Jun 15 19:08 README.txt
服务管理
svnserve -d -r /opt/svn/
killall svnserve
[root@localhost conf]# netstat -tunlp | grep svn
tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 1473/svnserve
客户端安装
windows上安装客户端
客户端下载地址:http://ufpr.dl.sourceforge.net/project/tortoisesvn/1.9.4/
需要安装tortoisesvn客户端和语言包。
安装完成后,需要重启。然后更改语言
客户端的具体使用,可以参考下面的官网文档。
http://ufpr.dl.sourceforge.net/project/tortoisesvn/1.9.4/Documentation/TortoiseSVN-1.9.4-zh_CN.pdf
创建用户和设置权限
参考:
http://blog.csdn.net/jo_andy/article/details/46137371
ll /opt/svn/repo/conf
包含3个配置文件
- (1).在passwd文件中创建用户
vim passwd
顶行填写帐号名和密码
[users]
admin1 = password1
server = password2
web = password3
ui = password4
- (2).设置用户组以及分配对应权限
①确定角色种类
admin
server
web
ui
②设计用户组和成员
vim authz
在[group]下面添加
admin = admin1
server = server1,server1
web = web1
ui = ui1
③分配权限,接着上面的配置下写权限
管理员组拥有所有目录下的读写权限,其他组对各自单独管理的目录有读写权限对其他目录只有只读权限或没有权限
[/]
@admin = rw
@server = r
@web = r
@ui = r
[/server]
@server = rw
[/web]
@server = rw
[/web]
@web = rw
[/common]
* = rw
贴一份实际环境的配置
## 部门分组
[groups]
admin = maotai
group = allen,Aimee,Amanda
ios = bob,Ailsa
android = cristin,Jasmine
php = denny,Estelle
pm = emy
test = funny
test-r = Ganllen,Bunny
bi = Anne,Carrie,Alice
## 授权
[/]
@admin = r
@group = r
[REPO1:/]
@admin = rw
@group = rw
[REPO1:/docs]
@test = rw
@test-r=r
[REPO1:/bbs]
@admin= rw
@php = rw
## 要求
## 1.pm组内人针对彼此的文件有checkout的权限(r),但只能改自己的文件.
## 2.其他特殊人员,可以对pm组里修改
[REPO1:/pm]
maotai = rw #特别授权
cristin=rw #特别授权
Estelle=r #特别授权
@pm = r
@admin = r
@group = r
@ios = r
@android = r
@test = r
[REPO1:/pm/emy] ## 额外给各自授权可以改自己的.
emy = rw
@pm = r
@admin = r
@group = r
@ios = r
@android = r
@test = r
pm组对应的url是
http://192.168.1.1/svn/REPO1/pm
此处用于客户端来拉取
清除认证信息
参考: http://www.cnblogs.com/xiaobaihome/archive/2012/03/22/2411036.html