5.1 安装服务器端程序

      yum install -y subversion

    

5.2 创建并配置版本库

  创建版本库目录
      mkdir -p /var/svn/repository
  在版本库目录下创建具体项目目录
      mkdir pro_oa
  创建SVN 版本库
      svnadmin create /var/svn/repository/pro_oa
       版本库内容

5.3 配置SVN 对应的服务
    思路

      

  SVN

      名称:svnserve
      默认情况下不是开机自动启动

[root@root02 repository]# chkconfig|grep svn
svnserve 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
[root@root02 repository]# chkconfig svnserve on
[root@root02 repository]# chkconfig|grep svn
svnserve 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
[root@root02 repository]#

      对应可执行脚本文件路径

/etc/rc.d/init.d/svnserve

      注意备份!

      SVN 服务具体配置

原版
args="--daemon --pid-file=${pidfile} $OPTIONS"
修改版
args="--daemon --root 版本库根目录--listen-port 指定端口号--pid-file=${pidfile} $OPTIONS"
args="--daemon --root /var/svn/repository --listen-port --pid-file=${pidfile} $OPTIONS"
使用默认端口号的配置方式
args="--daemon --root /var/svn/repository --pid-file=${pidfile} $OPTIONS"

  5.4 启动SVN 服务

[root@rich init.d]# service svnserve start
正在启动svnserve:[确定]
[root@rich init.d]# service svnserve status
svnserve (pid 3443) 正在运行...
[root@rich init.d]# netstat -anp|grep :2255
tcp 0 0 0.0.0.0:2255 0.0.0.0:* LISTEN
3443/svnserve
[root@rich init.d]# ps -ef|grep svnserve|grep -v grep
root 3443 1 0 11:41 ? 00:00:00 /usr/bin/svnserve --daemon --root
/var/svn/repository --listen-port 2255 --pid-file=/var/run/svnserve.pid
[root@rich init.d]# cat /var/run/svnserve.pid
3443

命令行客户端

    创建两个工作区目录模拟两个开发人员
        mkdir -p /root/workspace/harry
        mkdir -p /root/workspace/sally
          检出 

 作用:完整下载版本库中的全部内容。
         命令
            svn checkout svn://192.168.40.34/pro_oa ./ 
        附加效果
           在指定目录下创建.svn 目录
           保存本地目录和文件状态信息,用来和SVN 服务器进行交互
       工作副本
        .svn 所在的目录
        版本控制相关操作都需要在工作副本目录下执行。例如:提交、更新等等这样的操作。
        为了保证工作副本能够正常和服务器进行交互,请不要删除或修改.svn 目录中的内容。

   添加

                      SVN 要求提交一个新建的文件前先把这个文件添加到版本控制体系中。

       svn add 文件名

        

    提交

          要求1:附加日志信息

              日志信息相当于写Java 代码时的注释,用来标记本次操作所做的修改。
               svn commit -m "xxx" [文件名]

          要求2:必须具备相应的权限

               使用文本编辑器打开版本库根目录/conf/svnserve.conf 文件

                

                

                

      查看服务器端文件内容  

[root@root03 harry]# svn list svn://192.168.40.34/pro_oa
good.log
hello.txt
[root@root03 harry]# ^C
[root@root03 harry]#

      更新操作

        作用:把服务器端文件所产生的所有修改下载到本地

          命令:svn update [文件名]

          

          

     冲突

       过时的文件

              在一个相对服务器端版本来说是旧版本的基础上进行了修改的文件。
              要求:所有过时的文件都必须先执行更新操作,更新后在最新版基础上修改的文件才允许提交。

              

              

         冲突的产生      

              条件1:本地当前编辑的文件已经过时。
              条件2:从服务器端更新下来的修改和本地的修改在“同文件同位置”不一致。

         冲突的表现

              文件内

                

              目录内

              

              由于发生冲突产生的冲突

                

                

                xxx.mine 文件:发生冲突时本地文件内容
                xxx.r[小版本号]文件:发生冲突前文件内容

                 xxx.r[大版本号]文件:发生冲突时服务器端文件内容

                 

     冲突的手动解决

        第一步:删除冲突发生时产生的三个多余文件

rm 多余的三个文件名
        第二步:删除冲突文件内多余的符号

              提交

        第三步:把文件编辑到满意的状态

        第四步:提交

     冲突的半自动解决

          设置SVN_EDITOR 环境变量

             

            

              编辑: vim /etc/profile 文件
              在末尾添加:
                SVN_EDITOR=/usr/bin/vim
                export SVN_EDITOR
              启动生效文件 
              source /etc/profile

              查看是否是生效
              echo $SVN_EDITOR

          解决的过程

            使用e 选项进入文件内容编辑界面

            

              进入vim 编辑器编辑文件内容

              

             编辑完成后使用r 选项标记为已解决

              

        减少冲突的发生

              尽可能在修改文件前先进行更新操作,尽量在最新版基础上修改文件内容。

              尽量减少多人修改同一个文件的可能性。
              加强团队成员之间的沟通。

      

SVN服务器端环境搭建步骤的更多相关文章

  1. Java Web 环境搭建步骤(超详细,包括前期安装步骤)

    Java Web 环境搭建步骤 安装对应版本的JDK 配置环境变量 本人安装的路径是C盘,在path中加入C:\Program Files\Java\jdk1.8.0_65\bin 测试配置成功,cm ...

  2. Linux vagrant+virtualbox环境搭建步骤

    Linux vagrant+virtualbox环境搭建步骤 Vagrant 是一款用来构建虚拟开发环境的工具,非常适合 php/python/ruby/java 这类语言开发 web 应用. 我们可 ...

  3. [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)

    MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)   网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...

  4. 在Android Studio上测试运行,Unity发布成Android包的环境搭建步骤

      我用的是unity5.4.3版本,jdk是1.8.0_131版本,Android-SDK是r24.4.1版本,Android-NDK是r13b版本,作者是刚开始写博客,希望对在unity摸索的人有 ...

  5. Windows2008 R2 X64 PHP环境搭建步骤

    Windows2008 R2 X64 PHP环境搭建步骤: 下载:Mysql5.7.23.PHP5.6.Zend.XCahe 一.安装MYSQL.导入数据: 解压MYsql压缩包,并新建Data目录, ...

  6. Hadoop分布环境搭建步骤,及自带MapReduce单词计数程序实现

    Hadoop分布环境搭建步骤: 1.软硬件环境 CentOS 7.2 64 位 JDK- 1.8 Hadoo p- 2.7.4 2.安装SSH sudo yum install openssh-cli ...

  7. python+selenium环境搭建步骤

    一.自动化简介 1.自动化测试概念: 是把以人为驱动的测试转化为机器执行的一种过程,它是一种以程序测试程序的过程 2.自动化测试分类: 一般IT上所说的自动化测试是指功能自动化测试,通过编码的方式用一 ...

  8. 基于Python3.7的robotframework环境搭建步骤

    一.前言 Robot Framework作为公司能快速落地实现UI自动化测试的一款框架,同时也非常适合刚入门自动化测试的朋友们去快速学习自动化,笔者计划通过从搭建逐步到完成自动化测试的过程来整体描述它 ...

  9. Hadoop集群环境搭建步骤说明

    Hadoop集群环境搭建是很多学习hadoop学习者或者是使用者都必然要面对的一个问题,网上关于hadoop集群环境搭建的博文教程也蛮多的.对于玩hadoop的高手来说肯定没有什么问题,甚至可以说事“ ...

随机推荐

  1. Orientation of phone Image

    相机拍摄的图像方向问题 Description 很多时候,我们习惯把手机相机拍摄的图像在电脑上面查看.有的时候在手机上面看图像是正的,可是电脑端查看是反的:有的时候手机和电脑都是反的:有的时候都是正的 ...

  2. ubuntu 基础环境

    一.序言 这里记录了安装ubuntu 系统,以及里面常用的东西,jdk,idea,maven,svn,git 等等工具的安装,因为这些动作不是经常操作的,因此这里做一个记录,方便新手或者忘记的时候看看 ...

  3. select_shape_proto算子的几种特征模式含义解析

    select_shape_proto是一个非常有用的region筛选算子,但是由于难以理解,因此一般人使用得不是太多. 算子签名如下: select_shape_proto(Regions, Patt ...

  4. PHP(九)数组(2)

  5. 3ds Max从入门到精通

    1. 软件的下载与安装 这里用的是3ds Max2009简体中文版 32位 在 Win7上运行记得打上sp2补丁,不然会有bug. 2. 3ds Max的历史 3ds Max可以用在动画和游戏,点云数 ...

  6. C++笔记16之const的用法总结

    const主要是为了程序的健壮型,减少程序出错. 最基本的用法: const int a=100; b的内容不变,b只能是100也就是声明一个int类型的常量(#define b =100) int  ...

  7. Centos 下部署tomcat多实例

    基础环境及JDK就不多说了,下面的目录结构以如下为准: 根目录-apps 根目录-apps--tomcat 根目录-apps--ins1 根目录-apps--ins2 ================ ...

  8. gitignore 使用

    在git中如果想忽略掉某个文件,不让这个文件提交到版本库中,可以使用修改根目录中 .gitignore 文件的方法(如无,则需自己手工建立此文件).这个文件每一行保存了一个匹配的规则例如: # 此为注 ...

  9. windows通过命令方式解压zip文件

    1.需要下载unzip 地址:http://gnuwin32.sourceforge.net/packages/unzip.htm 下载exe版本 2.安装后将bin目录下的unzip.exe文件放在 ...

  10. AutoMapper在C#中的有趣应用

    最近发现了一个比较有趣的东西 AutoMapper,主要将Model转换为DTO,DTO更注重数据,对领域对象进行合理封装,从而不会将领域对象的行为过分暴露给表现层. 先来看一点实例,两个类之间的映射 ...