♣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系列 架设服务器 知识一总结)的更多相关文章

  1. Tomcat系列之服务器的安装与配置以及各组件详解

    Tomcat系列之服务器的安装与配置以及各组件详解 大纲 一.前言 二.安装与配置Tomcat 三.Tomcat 目录的结构 四.Tomcat 配置文件 注,本文的测试的操作系统为CentOS 6.4 ...

  2. centos5.11 repo 安装mysql5.7

    http://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html mysql yum repo 安装说明 http://d ...

  3. Centos5.11 使用yum源

    由于我是用的系统是Centos 5.11以停止更新很多年,故此yum也不能用,找了很多方法,最终yum能稳定的运行在Centos5.11上,下面开始一一讲解步骤: 1:首先更新yum源 地址:http ...

  4. [源码管理] ubuntu中svn简明用法:服务器搭建+客户端使用

    本文是对网络上前人的优秀文章加以实践验证后所整理(修正或补充) 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subve ...

  5. svn+apache搭建版本控制服务器

    Centos7(linux)搭建版本控制服务器(svn+apache) 1.简介: 版本控制服务器: 版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所 ...

  6. svn import后,服务器上少了所有*.a文件的问题解决

    转载自:http://blog.csdn.net/lwl_ls/article/details/20222051 将本地代码import到svn服务器. svn co出代码,编译却报错少了这个那个*. ...

  7. 取消本地SVN文件夹与服务器关联

    问题:之前建了一个SVN代码库,同步了代码上去,但中途发现建库时的规则搞错了,就把服务器上的库给删了重建,然后改变本地代码的svn服务器关联地址,但使用Relocate一直报错. 错误有两种情况:1. ...

  8. (转)推荐一个在Linux/Unix上架设ASP.NET的 WEB服务器--Jexus

    在Linux/Unix上架设ASP.NET WEB服务器,有两个可选方式,一种是Mono+XSP,一种是Mono+Jexus,其它的方式,比如 Apache+mod_mono.Nginx+FastCg ...

  9. SVN将一台服务器上的代码迁移到另一台服务器上

    由于我们出差,需要把svn服务器上的代码同步到我电脑上,自己各种百度折腾了快一天才弄好,下面来分享下我的具体思路和操作步骤.有2种方式:第一种方式:直接将本地自己dowm下来的代码导入到本地svn服务 ...

随机推荐

  1. C++虚表(V-Table)解析

    C++中的虚函数的作用主要是实现了多态,本人通过代码验证的方式了解虚表的结构及在多种继承方式下通过虚表访问子类函数.验证结果如下: 1)无虚函数覆盖的一般继承:可以通过子类的虚表访问父类的函数 2)虚 ...

  2. PHP递归遍历指定文件夹内的文件

    今天早上在地铁上看了关于文件和文件夹的一章,正好最近刚搞懂linux的文件系统,觉得对文件属性的访问跟Shell命令很像,所以想晚上来实践一下. 发现php的文件夹函数好像没有提供遍历文件夹下的所有文 ...

  3. jQuery UI 实例 - 自动完成(Autocomplete)

    http://www.runoob.com/jqueryui/example-autocomplete.html 自定义数据并显示 您可以使用自定义数据格式,并通过简单地重载默认的聚焦和选择行为来显示 ...

  4. 关于Mysql的索引

    索引是指把你设置为索引的字段A的内容储存在一个独立区间S里,里面只有这个字段的内容.在找查这个与这个字段A的内容时会直接从这个独立区间里查找,而不是去到数据表里查找.找到的这些符合条件的字段后再读取字 ...

  5. hibernate系列笔记(3)---持久化对象

    持久化对象 再讲持久化对象之前,我们先来理解有关session中get方法与 load方法区别: 简单总结: (1)如果你使用load方法,hibernate认为该id对应的对象(数据库记录)在数据库 ...

  6. PHP会话控制Session与Cookie

    理解会话控制的概念: 阅读过HTTP协议相关资料的同学都会知道HTTP协议是WEB服务器与客户端(浏览器)相互通信的协议,它是一种无状态协议,所谓无状态,指的是不会维护http请求数据,http请求是 ...

  7. 使用jQuery快速高效制作网页特效-----------------------------之jQuery事件与动画

    1.基础事件 分为三个事件 1.1 window事件 所谓window事件,就是当用户执行某些会影响浏览器的操作时,而触发的事件. 1.2 鼠标事件 鼠标事件顾名思义就是当用户在文档上移动或单击鼠标时 ...

  8. Java集合学习笔记

      在Java中,我们经常听到Collections框架.Collection类以及Collections类.这三者名字相似,但是从概念上讲却是不同的.Collections框架泛指Java中用于存储 ...

  9. Docker存储驱动之Device Mapper简介

    Device Mapper是一个基于kernel的框架,它增强了很多Linux上的高级卷管理技术.Docker的devicemapper驱动在镜像和容器管理上,利用了该框架的超配和快照功能.为了区别, ...

  10. 3997: [TJOI2015]组合数学

    3997: [TJOI2015]组合数学 Time Limit: 20 Sec  Memory Limit: 128 MBSubmit: 247  Solved: 174[Submit][Status ...