zoukankan      html  css  js  c++  java
  • centos6.5环境下svn服务器和客户端配置实用详解

    一、服务器端配置


    安装
    # yum install -y subversion
    yum安装软件,不清除软件包的方法


    # vim /etc/yum.conf
    keepcache=0


    建立svn版本库数据存储根目录svndata及用户、密码权限目录svnpasswd
    # mkdir -pv /application/svndata
    # mkdir -pv /application/svnpasswd


    启动服务
    # svnserve -d -r /application/svndata/
    验证服务是否正常启动
    # ps -ef | grep svn
    # lsof -i :3690


    建立项目管理库
    # svnadmin create /application/svndata/sadoc
    # tree /application/svndata/
    /application/svndata/
    └── sadoc
        ├── conf
        │   ├── authz
        │   ├── passwd
        │   └── svnserve.conf
        ├── db
        │   ├── current
        │   ├── format
        │   ├── fsfs.conf
        │   ├── fs-type
        │   ├── min-unpacked-rev
        │   ├── rep-cache.db
        │   ├── revprops
        │   │   └── 0
        │   │       └── 0
        │   ├── revs
        │   │   └── 0
        │   │       └── 0
        │   ├── transactions
        │   ├── txn-current
        │   ├── txn-current-lock
        │   ├── txn-protorevs
        │   ├── uuid
        │   └── write-lock
        ├── format
        ├── hooks
        │   ├── post-commit.tmpl
        │   ├── post-lock.tmpl
        │   ├── post-revprop-change.tmpl
        │   ├── post-unlock.tmpl
        │   ├── pre-commit.tmpl
        │   ├── pre-lock.tmpl
        │   ├── pre-revprop-change.tmpl
        │   ├── pre-unlock.tmpl
        │   └── start-commit.tmpl
        ├── locks
        │   ├── db.lock
        │   └── db-logs.lock
        └── README.txt
    
    
    11 directories, 28 files



    修改配置
    # cd /application/svndata/sadoc/conf
    # cp svnserve.conf svnserve.conf.bak
    修改配置文件
    # vim svnserve.conf 


    anon-access = none # 关闭匿名访问
    auth-access = write
    password-db = /application/svnpasswd/passwd
    authz-db = /application/svnpasswd/authz


    验证修改是否成功
    # diff svnserve.conf svnserve.conf.bak 
    12,13c12,13
    < anon-access = none
    < auth-access = write
    ---
    > # anon-access = read
    > # auth-access = write
    20c20
    < password-db = /application/svnpasswd/passwd
    ---
    > # password-db = passwd
    27c27
    < authz-db = /application/svnpasswd/authz
    ---
    > # authz-db = authz


    # cp passwd authz /application/svnpasswd/

    # cd /application/svnpasswd

    # chmod 700 *
    # ll
    total 8
    -rwx------ 1 root root 1080 Jun 27 15:35 authz
    -rwx------ 1 root root  309 Jun 27 15:35 passwd


    增加访问svn用户信息
    # vim passwd 



    编辑用户权限
    # vim authz
    sagroup = jack,xiaoming
    [/]
    jack = rw
    xiaoming = r

    @sagroup = r


    配置SVN服务器的HTTP支持

    svn作为独立服务器或借助apache服务的两种方式,可同时使用。
    安装apache服务
    # yum install -y httpd
    (1)转换SVN服务器的密码
    因为svn密码为明文,http不支持明文.需要生成一个webpasswd文件,首次创建new的webpass文件用-c。


    #/application/svnpasswd
    # htpasswd -c webpasswd jack
    根据提示输入密码即可


    目录下会多一个webpasswd文件。
    注意如果需要,多次加入用户,则用htpasswd -m
    #htpasswd -m webpasswd tom


    (2)配置apache



    # vim /etc/httpd/conf/httpd.conf

    Listen 9000

    在最后添加如下信息:

    <Location /svn>  
    DAV svn  
    SVNPath /application/svndata/sadoc/
    AuthType Basic  
    AuthName "svn for project"  
    AuthUserFile /application/svnpasswd/webpasswd   
    AuthzSVNAccessFile /application/svnpasswd/authz
    Satisfy all  
    Require valid-user  
    </Location>  

    (3)重启httpd
    #/etc/init.d/httpd restart
    出现Unknown DAV provider: svn的错误,是因为系统没有安装mod_dav_svn,它是Subversion与Apache之间的接口(通过它,Apache就可以访问版本库,可以让客户端也使用HTTP的扩展协议 WebDAV/DeltaV进行访问)。

    #yum install mod_dav_svn    //使subversion与dav模块通信的功能

    #yuminstall mod_authz_svn  //实现权限控制功能

    再重启即可。


    (4)使用浏览器访问http://192.168.8.39:9000/svn/
    继续报错:You don't have permission to access /svn/ on this server
    查看日志发现是没有权限访问authz认证文件
    # tail /var/log/httpd/error_log 
    [Tue Jun 28 19:34:45 2016] [error] [client 192.168.50.18] (13)Permission denied: Failed to load the AuthzSVNAccessFile: Can't open file '/application/svnpasswd/authz': Permission denied

    修改认证文件访问权限即可
    # chmod 744 /application/svnpasswd/authz
    若单独设置端口号,网址为http://IP地址:端口/svn。


    二、客户端配置

    windows环境客户端

    下载并安装TortoiseSVN 1.9.2


    svn客户端连接服务器的方式,账号及密码:
    svn://192.168.8.39/sadoc
    用户名:jack
    密码:jack123


    windows中存放svn信息的路径:

    %APPDATA%Subversionauth


    svn.simple 里面包含了基本认证方式所需要的认证信息,包括用户名密码信息
    svn.ssl.server 里面包含了ssl服务器证书
    svn.username 包含了用户名认证的认证信息


    下载更新
    SVN服务器有新的文件发布或者修改,本地文件库从SVN服务器更新;在本地文件库中,在空白处右键鼠标,点击SVN Update 

    可以清除配置:



    上传更新
    从本地文件库有的新的文件发布或者修改需要更新到SVN服务器;在本地文件库中,在空白右键鼠标,点击SVN Commit



    linux客户端

    从svn库提取数据
    # mkdir /svndata
    [root@node3 ~]# svn co svn://192.168.8.39/sadoc/ /svndata/ --username=jack --password=jack123
  • 相关阅读:
    lnmp搭建禅道项目
    Vue 常用指令
    vue-tools
    阿里巴巴iconfont使用
    vue创建项目
    yarn 安装vue
    php 名字中间加星号
    图片转base64
    php阿里云短信功能
    php实名认证,身份证号,姓名加照片比对
  • 原文地址:https://www.cnblogs.com/reblue520/p/6239777.html
Copyright © 2011-2022 走看看