Centos 6.8安装 SVN

 

SVN

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

 

1:安装说明

  1. 操作系统:Centos-6.8
  2. 安装方法:yum
  3. 安装软件:SVN

2:检查自己是否已安装SVN

rpm -qa subversion
#如果有已安装版本,进行卸载旧版本
yum remove subversion

3:安装SVN

yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql

4:确认已安装了svn模块

cd /etc/httpd/modules
ls | grep svn
--------------
mod_authz_svn.so
mod_dav_svn.so

5:验证安装

检验已经安装的SVN版本信息
[root@localhost modules]# svnserve --version

svnserve,版本 1.6.11 (r934486)
   编译于 Aug 17 2015,08:37:43

版权所有 (C) 2000-2009 CollabNet。
Subversion 是开放源代码软件,请参阅 http://subversion.tigris.org/ 站点。
此产品包含由 CollabNet(http://www.Collab.Net/) 开发的软件。

下列版本库后端(FS) 模块可用: 

* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。

Cyrus SASL 认证可用。

6:代码库创建

SVN软件安装完成后还需要建立SVN库

mkdir -p /opt/svn/repositories
svnadmin create /opt/svn/repositories

执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。

7:配置代码库

进入上面生成的文件夹conf下,进行配置

cd /opt/svn/repositories/conf

8:用户密码passwd配置

cd /opt/svn/repositories/conf
vi + passw

修改passwd为以下内容: 

[users]
# harry = harryssecret
# sally = sallyssecret
willam=123456 

9:权限控制authz配置

vi + authz

目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容: 

#设置[/]代表根目录下所有的资源
[/]
willam=rw 

10:服务svnserve.conf配置

vi + svnserve.conf

追加以下内容: 

[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access=none
#使授权用户有写权限
auth-access=write
#密码数据库的路径
password-db=passwd
#访问控制文件
authz-db=authz
#认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字
realm=/opt/svn/repositories 

11:配置防火墙端口

vi /etc/sysconfig/iptables
#添加以下内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
#保存后重启防火墙
service iptables restart

12:启动SVN

svnserve -d -r /opt/svn/repositories

13:查看SVN进程

ps -ef|grep svn|grep -v grep
root     12538     1  0 14:40 ?        00:00:00 svnserve -d -r /opt/svn/repositories

14:检测SVN 端口

netstat -ln |grep 3690
tcp        0      0 0.0.0.0:3690                0.0.0.0:*                   LISTEN

15:停止重启SVN

killall svnserve   #停止
svnserve -d -r /opt/svn/repositories  #启动

16:测试

SVN服务已经启动,使用客户端测试连接。

客户端连接地址:svn co svn://192.168.126.129
用户名/密码: willam/123456

17:如果想创建多个版本库

mkdir -p /opt/svn/repositories/svn2                      ##创建目录
svnadmin create /opt/svn/repositories/svn2 
#重复步骤4的配置方法
killall svnserve                                  #关闭svn服务
svnserve -d -r /opt/svn/repositories            #启动svn,注意目录,不包含svn2

18:删除版本库

rm -rf svn2/

19:同个svn库下根据不同的权限访问不同的目录

vim /opt/svn/repositories/conf/authz  #作为参考

[groups]
 chanpin = user1,user2
 yanfa = user3,user4
[svn1:/]
test = rw
other = rw
anyone = rw
@chanpin = rw
@yanfa = rw

[svn1:/chanpin]
other = rw
@chanpin = rw
* =

[svn1:/yanfa]
anyone = rw
@yanfa = rw
* =

 

posted @ 2017-12-18 10:39  Old·Artist  阅读(896)  评论(0编辑  收藏  举报