> CentOS > CentOS教程 >

Centos7.2搭建SVN服务端完整配置

SVN是版本控制subversion的简称
主要功能是对文档[java,conf,shell,PPT]多人协作办公

 

服务端 192.168.2.100

  1. 安装软件
    #yum -y install subversion

  2. 创建仓科目录

    #mkdir  /var/svn/                  //普通目录
    #svnadmin create /var/svn/project    //创建仓库

  3. 导入一些文档 配置文件 shell java或php脚本

    #cd /usr/lib/systemd/system
    #svn import file:///var/svn/project  -m "service config file"
    //将当前目录下的文档,导入到SVN仓库,-m后设置描述信息

  4. 查看导入的文档
    #svn list  file:///var/svn/project

 

 5. 修改配置文件
    #cd   /var/svn/project1/conf
    #vim  svnserve.conf
    19:anon-access = none            //匿名没有权限
    20:auth-access = write           //认证用户可读可写
    27:password-db = passwd        //账户信息文件
    34:authz-db = authz             //权限配置文件
    #vim  passwd
    tom = 123456                  //自定义账户与密码
    jerry = 123456                 //自定义账户与密码
    #vim   authz
    [/]
    tom = rw
    jerry = rw
    #svnserve -d  -r /var/svn/project/
    启动服务,共享仓库,仓库目录为/var/svn/project/
    启动的端口号为3690

 

 

客户端 192.168.2.200 测试:

 

1. 下载代码到本地副本
    #mkdir /temp
    #cd /temp
    #svn --username tom --password 123456  co  svn://192.168.2.100  code
    //将服务器上的文档下载到本地code目录下
    //co(checkout)下载,code目录会自动创建
    #svn co  svn://192.168.2.100  code
2. 本地修改代码,上传到服务器
    #cd code
    任意修改任意文件:
    #svn  ci  -m  "任意字符"                   //ci(commit)提交代码
3. 连接服务器将本地副本的数据更新
    #svn  update
4. 查看历史记录
    #svn   log   svn://192.168.2.100
5. 新建文档
    #echo "abc" > a.conf     //普通文件
    #svn  add a.conf         //让svn识别该文件
    #svn  ci  -m  "test"     //提交修改
6. 删除文档
    #svn     rm      usbmuxd.service  
    #svn     cp       old   new
    #svn     mkdir    test
    #svn     mv      old   new

7. 查看本地副本和服务器的差异
    #svn diff                                   //查看所有差异
    #svn diff zram.service                       //查看某个文件的差异
8. 查看服务器上版本文档的全部内容
    #svn cat  svn://192.168.2.100/文件名
9. 恢复数据
    1)本地修改但没有提交
    #svn   revert   文件名
    2)本地修改,并提交了服务器(大量数据需要还原)
    # cd  /temp
    # svn co -r2  svn://192.168.2.100 mycode     //从服务器下载版本2中的所有代码
    3)本地修改,并提交了服务器(个别数据需要还原)
    # cd /temp/code
    # svn  merge  -r6:1  文件名                 //将某一个文件从第6个版本还原到第1个版本

10. 管理员备份仓库 
    #du -sh /var/svn/project1
    1.备份:
    #svnadmin dump /var/svn/project/ > pro.bak
    2.还原数据
    9#svnadmin load /var/svn/project/ < pro.bak




(责任编辑:IT)