svn在Linux环境下仓库的创建与权限访问

创建仓库

svn create 创建仓库

语法:svnadmin create /directory

我是在home/svnrepo下新建myproject仓库

cd /home
mkdir svnrepo
svnadmin create /home/svnrepo/myproject

仓库创建成功以后,会出现一个仓库名字的文件夹 文件夹下面有以下几个文件和目录
conf  db  format  hooks  locks  README.txt
其中conf文件夹下面包含三个重要文件 authz passwd svnserve.conf 

修改配置文件

增加用户 passwd

首先进入 conf文件下,
cd conf/
vi passwd
passwd的配置非常简单 语法格式: 用户名=密码
在打开的文件下新增用户如下图所示

修改svn启动项参数 svnserve.conf

svn服务配置文件为版本库目录中的文件conf/svnserve.conf。该文件仅由一个[general]配置段组成。参考 http://blog.sina.com.cn/s/blog_5542414f0100vw1l.html

[general]配置段中配置行格式如下:
<配置项> = <值>

配置项分为以下5项:
anon-access 控制非鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。
即"write"为可读可写,"read"为只读,"none"表示无访问权限。
缺省值:read

auth-access 控制鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。
即"write"为可读可写,"read"为只读,"none"表示无访问权限。
缺省值:write

password-db 指定用户名口令文件名。除非指定绝对路径,否则文件位置为相对conf
目录的相对路径。
缺省值:passwd

authz-db 指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
除非指定绝对路径,否则文件位置为相对conf目录的相对路径。
缺省值:authz

realm 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的
认证域相同,建议使用相同的用户名口令数据文件。
缺省值:一个UUID(Universal Unique IDentifier,全局唯一标示)

vi svnserve.conf
修改配置如下图红色标注

配置用户权限 authz

参考:http://www.linuxfly.org/post/449/
注意:
* 权限配置文件中出现的用户名必须已在用户配置文件中定义。
* 对权限配置文件的修改立即生效,不必重启svn。
用户组格式:
[groups]
<用户组名> = <用户1>,<用户2>
其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。
版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>
其中,方框号内部分可以有多种写法:
/,表示根目录及以下。根目录是svnserve启动时指定的,我们指定为/opt/svndata。这样,/就是表示对全部版本库设置权限。
repos1:/,表示对版本库1设置权限
repos2:/occi, ,表示对版本库2中的occi项目设置权限
repos2:/occi/aaa, ,表示对版本库2中的occi项目的aaa目录设置权限
权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。

vi authz

修改配置如下图红色标注

启动服务

语法:svnserve -d -r svn仓库目录

svnserve -d -r /home/svnrepo/myproject/

查看svn进程

ps -ef|grep svn

访问svn服务

使用svn客户端  输入地址  svn://ip/ 就可以访问成功,这里顺便介绍一下 因为在启动svn服务时指定的根目录是myproject 所以直接访问 svn://ip/就是到myproject仓库下 继续下去就是检出代码 新建trunk tag branch 等文件目录 提交到版本库就可以了.另外一点,svn提交之后的文件在仓库中是不可见的.


ps:本篇主要介绍了简单在linux上搭建svn服务器以及使用svn服务访问,后面还将会介绍使用http服务来访问svn以及如何搭建多版本仓库.

























评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值