首页 > 代码库 > centos5.11架设svn(svn系列 架设服务器 知识一总结)

centos5.11架设svn(svn系列 架设服务器 知识一总结)

?svn是什么?

?安装

   --yum安装

   --创建svn版本库目录

   --创建版本库

   --进入conf目录进行配置(该svn版本库配置文件)

   --启动svn版本库

   --开启3690端口

   --允许通过防火墙

   --重新启动

   --telnet测试端口


 

1.svn是什么?

SVN是Subversion的简称,是一个开放源代码的版本控制系统。(百度百科)简单来说SVN就是通过C/S架构把文件集中管理起来而已。原本不用SVN这类工具的时候,代码是散落在每个开发人员手里,而SVN就是把这些代码集中到服务器端储存。SVN管理的代码单元是按文件、文件夹进行管理,项目组事先约定好项目的文件夹结构,每个开发人员可以通过客户端将自己的代码上传到服务器端,也可以从服务器端将别人改过的最新版代码下载到自己的客户端,SVN会帮项目组存储上传过的所有版本,可以随时找回之前的某个版本。

2.安装

  2.1yum指令安装

   yum install subversion

   安装完成之后,通过输入  /usr/bin/svnversion --version  就可以查看svn的版本

 技术分享

 

   2.2创建svn版本库目录

   mkdir –p /var/svn/svnrepos

   注意,输入这条命令生成目录后,是不会提示创建成功的。

   2.3创建版本库 

   svnadmin create /var/svn/svnrepos
   执行了这个命令之后会在/var/svn/svnrepos目录下生成如下这些文件
   技术分享

  如果没有安装桌面程序,也可以通过命令行模糊看到这几个文件,如下图:

  技术分享

  2.4进入conf目录进行配置(该svn版本库配置文件)

    在2.3中我们创建了版本库,接下来就要进入conf目录,然后配置conf目录下的几个文件:

    authz文件是权限控制文件
  passwd 是帐号密码文件
    svnserve.conf SVN服务配置文件
    2.4.1配置passwd文件:添加用户
    首先你要进入conf目录
    技术分享
    才可以输入下面的指令进行添加用户:
    vi passwd
    在[users]块中添加用户和密码,格式:帐号=密码
 
    技术分享

    如上图,我添加了三个用户

    2.4.2配置authz文件:用户权限

    同样在进入conf目录的条件下输入:

    vi authz
     可以对用户进行分组,比如我把root和admin用户划为一组,alston这个用户划为另外一组。manager分组的用户对根目录有读写权限,develop分组的用户只有读的权限。这里要添加     [/]    ,因为svn是基于路径的权限分配,这里/表示svn根目录。

   技术分享

   2.4.3修改svnserve.conf文件

   vi svnserve.conf
   
    打开下面的几个注释:
    anon-access = read #匿名用户可读
    auth-access = write #授权用户可写
    password-db = passwd #使用哪个文件作为账号文件
    authz-db = authz #使用哪个文件作为权限文件
    realm = /var/svn/svnrepos # 认证空间名,版本库所在目录
 技术分享

 

 2.5启动svn版本库

   svnserve -d -r /var/svn/svnrepos

   其中 –d 表示后台运行,-r 表示数据目录

 技术分享

 

 2.6开启3690端口

  2.6.1 svn是默认3609端口的,所以要检查这一端口的监听信息
  netstat -anp | grep 端口号
  或者
  lsof -i | grep 端口号
 技术分享

 如上图,是有程序在监听这个端口的

 

 2.7允许通过防火墙 

     2.7.1防火墙开放指定端口。
          ①编辑防火墙  vi  /etc/sysconfig/iptables    
          ②添加开放端口8080端口:    -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT
     2.7.2或者,你可以直接把防火墙停掉,但一般不建议这么做。
       查看防火墙状态的参考指令:
       iptables是linux下的防火墙,同时也是服务名称。
       service  iptables  status        查看防火墙状态
       service  iptables  start           开启防火墙
       service  iptables  stop           关闭防火墙
       service  iptables  restart        重启防火墙
  2.8重新启动
       参考指令:    
     killall svnserve  或者  kill -9 svnserve (不推荐)
  2.9 telnet测试端口
     首先,你如果使用了腾讯云等服务器,需要在安全组打开端口:
     技术分享

       打开端口后,就可以在window下用telnet指令测试这个端口了,这里就不赘述telnet指令是什么和如何打开这个服务了。

       在window的命令行模式下输入:  telnet 服务器公网ip   端口号   

       注意telnet指定是没有:的,也就是说不是  ip:端口号

       技术分享

        如果成功的话,会进入

        技术分享

 


 系列文章目录:

centos5.11架设svn(svn系列 架设服务器   知识一总结)

window7使用svn(svn系列 使用  知识二总结)

centos5.11架设svn(svn系列 架设服务器 知识一总结)