zoukankan      html  css  js  c++  java
  • SVN配置

    参考资料:


    http://www.ha97.com/4467.html
    SVN作为新一代代码版本管理工具,有很多优点,管理方便,逻辑明确,安全性高,代码一致性高。SVN数据存储有两种方式,BDB(事务安全表类型)和FSFS(一种不需要数据库的存储系统),为了避免在服务器连接中断时锁住数据,FSFS是一种更安全也更多人使用的方式。SVN的运行方式也有两种,一种是独立服务器,另一种是借助apache服务,各有利弊,下面就介绍一下这两种方式各自的部署步骤。
    一.作为独立服务器运行,
    1.安装subversion
    #yum  install  subversion
    #mkdir    -p    /opt/svn  //创建svn目录
    #chmod  777  /opt/svn  //修改目录权限为777
    #svnadmin  create  /opt/svn/repos  //创建一个svn版本仓库repos (repos 名字自己起)
    #cd      /opt/svn/repos/conf    //进入repos版本仓库下的配置文件目录
    修改此目录下的三个配置文件
    1)  svnserve.conf    //配置版本库信息和用户文件和用户密码文件的路径、版本库路径
    #vim  svnserve.conf
    修改一下几处:
    #anon-access = read
    #auth-access = write
    #password-db = passwd
    将这三行前面的 #号去掉,每行的最左边不能有空格,改成如下:
    anon-access =  none    //read改为none
    auth-access = write
    password-db = passwd
    realm = repos            //改成自己的版本库
    如图:
    保存退出
    2) 修改authz 文件,创建svn组和组用户的权限
    #vim    authz
    [group]
    repos = test,test1      //创建一个repos的组,并添加2个用户test,test1
    [/]      //修改根目录下的权限
    @repos = rw        //repos组用户的权限为 读写
    test = rw              //test 用户的权限为读写
    * = r                    //其他用户的权限为只读
    如图:
    3)passwd 文件  创建或修改用户密码
    #vim passwd
    test = test    //用户名test的密码为test
    test1 =  test1    //用户名为test2的密码为test2
    保存退出

    二.设置开机启动文件
    1.  编辑/etc/rc.local
    文件内容如下(在touch /var/lock/subsys/local下面添加一行)
    #!/bin/sh
    #
    # This script will be executed *after* all the other init scripts.
    # You can put your own initialization stuff in here if you don’t
    # want to do the full Sys V style init stuff.
                    touch /var/lock/subsys/local
    svnserve    -d  -r  /opt/svn/repos
    如图:
    三.启动SVN服务
        1.启动svn服务,svn服务默认端口为3690,可以使用“netstat -ntlp”命令查看服务启动是否成功:
            #svnserve  -d  -r  /opt/svn/repos
    如果已经有svn在运行,可以换一个端口运行
    svnserve -d -r /opt/svn/repos --listen-port 3391
    这样同一台服务器可以运行多个svnserve
        2.启动成功后就可以使用了
            a.建议采用TortoiseSVN, 连接地址为: svn://your server address (如果指定端口需要添加端口  :端口号
            b.或者用命令行连接:
                svn  co svn://ip/
          连接上之后就可以使用了。


    注意!!!!!!
    创建仓库:svnadmin create PATH
    启用仓库:svnserve -d -r /svntest/tang(具体路径)
    也许需要修改conf里的三个配置文件

    重点!!!(详细在下面
    1. 初始化版本仓库中的目录
    2. # mkdir project project/server project/client project/test (建立临时目录)
    3. # svn import project/ file:///home/svn/project -m “初始化SVN目录”
    4. # rm -rf project (删除临时建立的目录)

    检查是否安装 telnet:rpm -qa telnet
    检查是否安装telnet服务:rpm -qa telnet-server
    如果进行了telnet-server安装操作,且已成功安装,则由于telnet服务是由xinetd守护的,所以我们需要重新启动xinetd。  : service xinetd restart
    chkconfig telnet on
    记得防火墙!!!
    在linux中要写入文件:svn checkout svn://192.168.233.128:3391(地址)/svntest/tang(具体路径)
    或者是:    svn  co svn://ip/


    TortoiseSVN中checkout是读取文件, import是写入文件


    1. 二,基本的SVN服务器配置
    2. 1,新建一个目录用于存储SVN所有文件
    3. # mkdir /home/svn
    4. 2,新建一个版本仓库
    5. # svnadmin create /home/svn/project
    6. 3,初始化版本仓库中的目录
    7. # mkdir project project/server project/client project/test (建立临时目录)
    8. # svn import project/ file:///home/svn/project -m “初始化SVN目录”
    9. # rm -rf project (删除临时建立的目录)
    10. 4,添加用户
    11. 要添加SVN用户非常简单,只需在/home/svn/project/conf/passwd文件添加一个形如“username=password”的条目就可以了。为了测试,我添加了如下内容:
    12. [users]
    13. # harry = harryssecret
    14. # sally = sallyssecret
    15. pm = pm_pw
    16. server_group = server_pw
    17. client_group = client_pw
    18. test_group = test_pw
    19. 5,修改用户访问策略
    20. /home/svn/project/conf/authz记录用户的访问策略,以下是参考:
    21. [groups]
    22. project_p = pm
    23. project_s = server1,server2,server3
    24. project_c = client1,client2,client3
    25. project_t = test1,test1,test1
    26. [project:/]
    27. @project_p = rw
    28. * =
    29. [project:/server]
    30. @project_p = rw
    31. @project_s = rw
    32. * =
    33. [project:/client]
    34. @project_p = rw
    35. @project_c = rw
    36. * =
    37. [project:/doc]
    38. @project_p = rw
    39. @project_s = r
    40. @project_c = r
    41. @project_t = r
    42. * =
    43. 说明:以上信息表示,只有project_p用户组有根目录的读写权。r表示对该目录有读权限,w表示对该目录有写权限,rw表示对该目录有读写权限。最后一行的* =表示,除了上面设置了权限的用户组之外,其他任何人都被禁止访问本目录。这个很重要,一定要加上!
    44. 6,修改svnserve.conf文件,让用户和策略配置升效.
    45. svnserve.conf内容如下:
    46. [general]
    47. anon-access = none
    48. auth-access = write
    49. password-db = /home/svn/project/conf/passwd
    50. authz-db = /home/svn/project/conf/authz
    51. 7,启动服务器
    52. # svnserve -d -r /home/svn








  • 相关阅读:
    usb 安装系统
    跨站请求伪造攻击的基本原理与防范
    解决hexo神烦的DTraceProviderBindings MODULE_NOT_FOUND
    我知道
    MAC 重置MySQL root 密码
    线性变换与独立观察的期望和方差
    最小二乘法
    卡方检验中自由度的计算
    关于置信水平,求区间的简便算法
    独立观察与线性变换方差 均值计算
  • 原文地址:https://www.cnblogs.com/tangbinghaochi/p/6293221.html
Copyright © 2011-2022 走看看