CentOS6.0 下使用yum命令安装和配置SVN版本库

以下内容在CentOS6.0操作系统(64位)下操作。

  1. CentOS6.0为默认安装。
  2. 使用yum命令安装httpd和svn。(以下命令都使用root用户执行)
    yum install httpd httpd-devel subversion mod_dav_svn mod_auth_mysql
  3. 修改/etc/httpd/conf/httpd.conf,将KeepAlive改为on。该修改可以保持http连接,提高SVN访问性能。
  4. 在/home目录下创建repository目录,作为SVN版本库的父目录。
  5. 进入repository目录,使用vi创建文件:authz.conf,用于存放访问权限。
  6. 在repository目录下使用htpasswd命令创建用户。-c参数表示创建密码文件,之后创建用户不需要带-c参数。
    htpasswd -c /home/repository/authfile testuser
  7. 在repository目录下使用使用命令创建库。也可以直接在其他目录下创建,但要指定版本库目录全路径。
    svnadmin create /home/repository/test
  8. 对repository目录赋权限,赋给apache用户。
    chown -R apache:apache /home/repository/
  9. 修改/etc/httpd/conf.d/subversion.conf如下内容:
    <Location /svn>
       DAV svn
       SVNParentPath /home/repository
    #
    #   # Limit write permission to list of valid users.
    #   <LimitExcept GET PROPFIND OPTIONS REPORT>
    #      # Require SSL connection for password protection.
    #      # SSLRequireSSL
    #
          AuthType Basic
          AuthName "Authorization SVN"
          AuthUserFile /home/repository/authfile
          AuthzSVNAccessFile /home/repository/authz.conf
          Require valid-user
    #   </LimitExcept>
    </Location>
  10. 使用import命令导入规定的SVN版本库结构。-m参数指定说明文字。
    svn import /home/repository/SVN_Model file:///home/repository/test -m “test”
  11. 配置访问权限。修改/home/repository/authz.conf。如下表示testuser拥有test项目的读写权限。
    [test:/]
    testuser = rw
  12. 启动apache,并关闭防火墙。
    service httpd start
    /etc/rc.d/init.d/iptables stop
  13. 增加开机自启动apache服务。
    chkconfig httpd on
  14. 永久关闭防火墙(重启后生效)。
    chkconfig iptables off
  15. 关闭SELINUX,否则会在日志(/etc/httpd/logs/error_log)中报:(13)Permission denied: Could not open *** file,导致无法正常访问SVN,或无法上传文件。关闭SELINUX的方法,修改/etc/selinux/config,把 SELINUX=enforcing 注释掉,并新加一行:
    #SELINUX=enforcing
    SELINUX=disabled

你可能感兴趣的:(centos,SVN)