SVN代码托管服务器配置-for centos

简介

SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。

安装步骤如下

1.安装SVN主程序


yum install subversion

2.在SVN软件安装完成后我们来建立SVN库,创建目录


mkdir -p /var/svn/subversion

3.创建版本库


svnadmin create /var/svn/subversion

创建后我们可以看到完整的目录结构是酱紫滴:


.
└── subversion
├── conf
│   ├── authz
│   ├── passwd
│   └── svnserve.conf
├── db
│   ├── current
│   ├── format
│   ├── fsfs.conf
│   ├── fs-type
│   ├── min-unpacked-rev
│   ├── rep-cache.db
│   ├── revprops
│   │   └── 0
│   │   └── 0
│   ├── revs
│   │   └── 0
│   │   └── 0
│   ├── transactions
│   ├── txn-current
│   ├── txn-current-lock
│   ├── txn-protorevs
│   ├── uuid
│   └── write-lock
├── format
├── hooks
│   ├── post-commit.tmpl
│   ├── post-lock.tmpl
│   ├── post-revprop-change.tmpl
│   ├── post-unlock.tmpl
│   ├── pre-commit.tmpl
│   ├── pre-lock.tmpl
│   ├── pre-revprop-change.tmpl
│   ├── pre-unlock.tmpl
│   └── start-commit.tmpl
├── locks
│   ├── db.lock
│   └── db-logs.lock
└── README.txt

4.接下来进入conf目录对svn进行配置


cd /var/svn/subversion/conf

下面来讲解下该目录下的三个文件:
authz文件是权限控制文件
passwd是帐号密码文件
svnserve.conf SVN服务配置文件
5.添加账号


vi passwd

未配置的passwd文件是这样的,我们只需要在[users]下面添加账号,格式为:账号=密码,例如:admin=123456


### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.[users]
# harry = harryssecret
# sally = sallyssecret

6.设置权限


vi authz

在底部添加图下代码:


[/]
acgcss=rw
w=r

Tips:[/]w=r之间是添加账号权限的,在这之间可以添加多个账号权限,前提是你在passwd文件已经添加了账号,acgcss=rw是为账号acgcss设置权限。

7.修改svnserve.conf文件


vi svnserve.conf

将以下字段的注释去掉(即删除#号):


# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
# realm = My First Repository

并修改版本库所在目录:


realm = /var/svn/subversion

以下是关于几个字段的解释:
anon-access = read #匿名用户可读
auth-access = write #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz #使用哪个文件作为权限文件
realm = /var/svn/subversion # 认证空间名,版本库所在目录
8.启动svn版本库


svnserve -d -r /var/svn/subversion

我们来查看下SVN的运行情况:


ps aux|grep svnserve

返回如下,可以看到成功启动了


root 27350 0.0 0.0 156992 760 ? Ss 09:44 0:00 svnserve -d -r /var/svn/subversion
root 27366 0.0 0.0 103244 872 pts/0 S+ 09:44 0:00 grep svnserve

到此我们的SVN代码托管服务器就此搭建成功了。

FAQ

1.重启svn


killall svnserve
svnserve -d -r /var/svn/subversion
SVN代码托管服务器配置-for centos-搬砖酱的笔记

2.TortoiseSVN 安装中文语言包,,首先得安装TortoiseSVN
英文版TortoiseSVN下载地址:TortoiseSVN
请移步:百度经验
3.如何连接到svn服务器
本地新建一个文件夹,用于同步服务器文件的,对其右键:svn checkout(SVN检出)输入版本库URL,URL格式:svn://ip,之后输入账号密码即可。

转自:https://alphabrock.cn/linux/791.html