CentOS下使用yum安装配置和使用svn

安装说明

系统环境:CentOS-6.3
安装方式:yum install (源码安装容易产生版本兼容的问题)
安装软件:系统自动下载SVN软件

检查已安装版本

01#检查是否安装了低版本的SVN
02[root@zck /]# rpm -qa subversion
03#卸载旧版本SVN
04[root@zck modules]# yum remove subversion
05安装SVN
06[root@zck modules]# yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
07确认已安装了svn模块
08[root@zck /]# cd /etc/httpd/modules
09[root@zck modules]# ls | grep svn
10mod_authz_svn.so
11mod_dav_svn.so

验证安装


检验已经安装的SVN版本信息
[root@zck modules]# svnserve --version
svnserve,版本 1.6.11 (r934486)
编译于 Jun 23 2012,00:44:03

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

下列版本库后端(FS) 模块可用:
* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。
Cyrus SASL 认证可用。

代码库创建

SVN软件安装完成后还需要建立SVN库
1[root@zck modules]# mkdir -p /opt/svn/repositories
2[root@zck modules]# svnadmin create /opt/svn/repositories
执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf, db,format,hooks, locks, README.txt等文件,说明一个SVN库已经建立。

配置代码库

进入上面生成的文件夹conf下,进行配置
[root@zck modules]# cd /opt/svn/repositories/conf

用户密码passwd配置
1[root@zck password]# cd /opt/svn/repositories/conf
2[root@admin conf]# vi + passwd
修改passwd为以下内容:
1[users]
2# harry = harryssecret
3# sally = sallyssecret
4zhoulf=123456

权限控制authz配置

[root @admin conf]# vi + authz
目的是设置哪些用户可以访问哪些目录,向authz文件追加以下内容:
#设置[/]代表根目录下所有的资源
[/]
zhoulf=rw
服务svnserve.conf配置

[root @admin conf]# vi + svnserve.conf

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

配置防火墙端口
1[root@zck conf]# vi /etc/sysconfig/iptables
2添加以下内容:
3-A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
4保存后重启防火墙
5[root@zck conf]# service iptables restart
启动SVN
1svnserve -d -r /opt/svn/repositories
查看SVN进程
1[root@zck conf]# ps -ef|grep svn|grep -v grep
2root 12538 1 0 14:40 ? 00:00:00 svnserve -d -r /opt/svn/repositories
检测SVN 端口
1[root@zck conf]# netstat -ln |grep 3690
2tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN
停止重启SVN
1[root@zck password]# killall svnserve //停止
2[root@zck password]# svnserve -d -r /opt/svn/repositories // 启动

测试

SVN服务已经启动,使用客户端测试连接。
客户端连接地址:svn://192.168.15.231
用户名/密码: zhoulf/123456
测试创建文件夹等操作。



另附:

CentOS下svn的安装配置和使用

一,安装必须的软件包

        $ yum install subversion
        $ yum install mod_dav_svn

二,基本的SVN服务器配置

        1,新建一个目录用于存储SVN所有文件
                # mkdir /home/svn
 
        2,新建一个版本仓库
                # svnadmin create /home/svn/test
 
        3,初始化版本仓库中的目录,导入原始代码
                如果原代码已经有svn的相关文件,则切换到原代码目录,先删除这些svn相关的文件和文件夹。假定/home/user/code/src存放源代码
                # cd /home/user/code/src
                # find ./ -name "*.svn" | xargs rm -rf
                # svn import /home/user/code/src file:///home/svn/test/ -m "init test code"
 
        4,添加用户
                在/home/svn/test/conf/passwd文件添加形如“username=password"的条目。
                [users]
                admin = adminpass
                user1 = 123456

         5,修改用户访问策略
                /home/svn/test/conf/authz记录用户的访问策略:
                        [groups]
                        
                        [test:/]
                        admin = rw
                        user1 = r
                        * =
                        
                        [test:/modue]
                        admin = rw
                        user1 = rw
                        * =
                以上表示admin具有所有的读写权限,user1在modue文件夹下可读可写,根目录下只读。也可以配置组的权限。
 
        6,修改/home/svn/test/conf/svnserve.conf文件,让用户和策略配置生效.
                svnserve.conf内容如下:
                        [general]
                        anon-access = none
                        auth-access = write
                        password-db = passwd
                        authz-db = authz
 
        7,启动服务器
                # svnserve -d -r /home/svn
 
        8,测试服务器
                # svn co svn://192.168.1.5/test
                按提示先输入用户密码,再输入svn的用户名、密码,就可以了。
                # cd test
                # vim main.c
                # svn add main.c 
                # svn commit main.c -m "comment"
                Adding         main.c
                Transmitting file data .
                Committed revision 2.  ( 测试提交成功 )

三,配置SVN服务器的HTTP支持(可以用浏览器看代码)

       1,修改httpd.conf,添加关于SVN服务器的内容
                修改/etc/httpd/conf/httpd.conf。
 
        2,重启HTTPD服务器
                # service httpd restart
 
        3,用浏览器访问http://192.168.1.5/test

四,可能出现的问题

1. 如果外网不能正常访问,可能还需要作端口映射,对外网开放3690端口。
    检查端口是否打开,可以用命令: telnet xxx.xxx.xxx.xxx 3690

2. 在windows下checkout的时候,如果出现类似以下的错误:

原因是linux下有同名但大小写不同的文件。一种解决办法是尽量避免这种情况,改成不同的名称。


其它:

linux下安装配置svn服务
CentOS6.0 下使用yum命令安装和配置SVN版本库
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值