♣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. java-9 异常处理

    1.异常处理的基础知识 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 比如说,你的代码少了一个分号,那么运行出来结果是提示是错误 java.lang.Error:如 ...

  2. 几分钟看完 flow.ci 全部功能

    从 0 到 1,从邀请式内测到收费上线,flow.ci 经历了十个多月的沉淀与打磨.这期间,flow.ci 工程师们奋力赶工,进行了一系列的大功能更新,Bug 修复,功能优化. 这篇文章记录了 flo ...

  3. RDLC系列(一)ASP.NET RDLC 报表自定义数据源

    最近一段时间开发ERP系统中要用到不少报表打印,在网上找了一圈发现想些好用的报表控件大部分要收费,一些面免费要么不好用要么IE8不兼容,最后还是用了微软自带的RDLC报表,把自己遇到的坑和技巧整理分享 ...

  4. 新学到的xss姿势,分享一下

    在js中有一种神奇的对象叫做window 当页面中包含如类似的 <script>var c = urlQuery("callback"); var r = JSON.p ...

  5. 如何在shell脚本中导出数组供子进程使用

    功能说明:设置或显示环境变量. 语 法:export [-fnp][变量名称]=[变量设置值] 补充说明:在shell中执行程序时,shell会提供一组环境变量.export可新增,修改或删除环境变量 ...

  6. Java编程风格学习(三)

    在上一篇的java编程风格学习(二)中我们学习了一些在Java编码过程中的格式规范,遵循这些规范毋庸置疑是我们的书写高质量代码的前提与基础.今天我们更进一步,一起来学习Java编程的命名规范,向着编写 ...

  7. ETL kettle 数据调取防止意外停止处理

    pentaho kettle是目前使用比较广泛的一种etl工具 但是在使用的时候如做定时任务 会存在如果任务异常停止会发生数据不准或者丢失数据的情况 这种情况在<Pentho Kettle So ...

  8. 每天一个linux命令(54)--watch命令

    watch是一个非常实用的命,基本所有的Linux发行版都带有这个小工具,如同名字一样,watch可以帮你监测一个命令的运行结果,省的你一遍遍的手动运行,在Linux下,watch是周期性的执行下个程 ...

  9. Hadoop伪分布安装配置

    安装环境: 系统:Ubuntu 14.10   64bit hadoop:2.5.1 jdk:1.8.0_11 安装步骤: 一.安装JDK 安装 jdk,并且配置环境以及设置成默认 sudo gedi ...

  10. Java并发之线程异常捕获

    由于线程的本质特性,使得你不能捕获从线程中逃逸的异常,如: import java.util.concurrent.ExecutorService; import java.util.concurre ...