Linux上搭建svn资源库

一、安装

  centos上安装

  使用命令svn  --version查看是否安装过svn;

  如果出现  bash: svn: command not found  则显示没有安装

  可以使用 yum install subversion 命令进行安装

  ubuntu上使用 apt-get install subversion  进行安装

  安装完毕后使用 svn  --version  进行查看。

二、创建资源库

  使用命令svnserve启动服务

  

svnadmin create /opt/svn/runoob

  使用命令svnserve启动服务

svnserve -d -r 目录 --listen-port 端口号

-r: 配置方式决定了版本库访问方式。
--listen-port: 指定SVN监听端口,不加此参数,SVN默认监听3690

  由于-r 配置方式的不一样,SVN启动就可以有两种不同的访问方式。

方式一:-r直接指定到版本库(称之为单库svnserve方式)

svnserve -d -r /opt/svn/runoob

在这种情况下,一个svnserve只能为一个版本库工作。

方式二:指定到版本库的上级目录(称之为多库svnserve方式)

在/opt/svn目录下使用  svnadmin create /opt/svn/仓库名  可以创建多个仓库,然后使用如下命令启动所有的仓库

svnserve -d -r /opt/svn

使用URL:  svn://ip地址/仓库名  即可访问。

三、配置文件

  在仓库中有个conf文件夹,主要放置仓库启动时的配置,包括svnserve.conf、passwd、authz 配置相关用户和权限;

  1、svn服务配置文件svnserve.conf 

[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = tiku 
  • anon-access: 控制非鉴权用户访问版本库的权限,取值范围为"write"、"read"和"none"。 即"write"为可读可写,"read"为只读,"none"表示无访问权限。 缺省值:read
  • auth-access: 控制鉴权用户访问版本库的权限。取值范围为"write"、"read"和"none"。 即"write"为可读可写,"read"为只读,"none"表示无访问权限。 缺省值:write
  • authz-db: 指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。 除非指定绝对路径,否则文件位置为相对conf目录的相对路径。 缺省值:authz
  • realm: 指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的 认证域相同,建议使用相同的用户名口令数据文件。 缺省值:一个UUID(Universal Unique IDentifier,全局唯一标示)。

· 2、用户名口令文件passwd

  用户名口令文件由svnserve.conf的配置项password-db指定,缺省为conf目录中的passwd。该文件仅由一个[users]配置段组成。[users]配置段的配置行格式如下:

<用户名> = <口令>
[users]
admin = admin
thinker = 123456

 3、权限配置文件

  权限配置文件由svnserve.conf的配置项authz-db指定,缺省为conf目录中的authz。该配置文件由一个[groups]配置段和若干个版本库路径权限段组成。

  [groups]配置段中配置行格式如下:

<用户组> = <用户列表>
[groups]
g_admin = admin,thinker

  版本库路径权限段的段名格式如下:

[<版本库名>:<路径>] 
[admintools:/]
#加上@是指定一个组,不加是指单个用户,*是指所有用户 @g_admin
= rw * = [test:/home/thinker] thinker = rw * = r

四、svn服务器的停止

  查到服务的进程号:ps -A | grep svn

  若有进程则杀死进程  kill  -9   PID

 

posted @ 2018-11-12 16:11  摆渡·人  阅读(1087)  评论(0编辑  收藏  举报