♣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. gulp+browser-sync使用方法

    gulp简介 gulp是基于流的自动化构建工具,也就是说gulp是通过操作流实现自动编译,压缩文件等操作的.这得益于node.js对流的支持,当然gulp.js和构建的任务文件都是JavaScript ...

  2. 读书笔记 effective c++ Item 17 使用单独语句将new出来的对象放入智能指针

    1. 可能会出现资源泄漏的一种用法 假设我们有一个获取进程优先权的函数,还有一个在动态分类的Widget对象上根据进程优先权进行一些操作的函数: int priority(); void proces ...

  3. vim编译安装+lua模块

    vim编译安装+lua模块 使用背景:代码自动补全插件,需要安装lua模块 安装准备,首先下载安装vim所依赖的其它安装包,ncurses,lua,readline,vim 源码下载,编译安装 ncu ...

  4. 学习git的使用--在当地的简单命令--01

    <----------git安装完成后操作-----------------> git config --global user.name "scy"添加用户名git ...

  5. ASP.NET MVC 使用Uploadify实现多文件异步无刷新上传

    软件技术开发,合作请联系QQ:858-048-581 这里我通过使用uploadify组件来实现异步无刷新多文件上传功能. 1.首先下载组件包uploadify,我这里使用的版本是3.1 2.下载后解 ...

  6. Java XML DOM解析(xPath)

    (一) XML概念 在电子计算机中,标记指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种的信息比如文章等.它可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的 ...

  7. python服务器环境搭建(1)——本地服务器准备

    去年十月底到新公司上班,由于公司旧系统存在各种问题同时不便于扩展,而公司领导对17年寄予很大的期望,用户量.收入要上一个新台阶,我经过全面评估后,决定全部用python重构过,开发一个基于微服务架构的 ...

  8. oracle expdp和impdp常用命令选项

    一.expdp导出数据库 1.按用户导出 expdp scott/tiger@orcl DIRECTORY=oracle_dmp dumpfile=bak.dmp schemas=scott vers ...

  9. 使用D3 Geo模块画澳大利亚地图

    数据 数据可视化主要旨在借助于图形化手段,清晰有效地传达与沟通信息.因此做数据可视化前需要想明白2件事: 你有什么数据? 你要传达什么信息? 本文中的示例中,将以不同的颜色显示澳大利亚不同地区的客户数 ...

  10. 学习ASP.NET MVC(十一)——分页

    在这一篇文章中,我们将学习如何在MVC页面中实现分页的方法.分页功能是一个非常实用,常用的功能,当数据量过多的时候,必然要使用分页.在今天这篇文章中,我们学习如果在MVC页面中使用PagedList. ...