• SVN版本管理系统的使用(CentOS+Subversion+Apache+Jsvnadmin+TortoiseSVN)


     1、服务器: 192.168.4.221
    root 用 户操作
    安装 装 apache
    # yum install httpd httpd-devel
    # service httpd start
    # chkconfig httpd on
    # vi /etc/httpd/conf/httpd.conf
    找到 ServerName 并修改成
    ServerName localhost:80
    防火墙中打开 80 端口:
    # vi /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
    # service iptables restart

    浏览器访问           http://192.168.4.221/

    2、安装 SVN 服 务
    # yum install mod_dav_svn subversion
    必须安装 mod_dav_svn 模块
    安装完 svn 后要重启 apache
    # service httpd restart
    查看测试是否安装 n svn 模块
    # ls /etc/httpd/modules/ | grep svn
    mod_authz_svn.so
    mod_dav_svn.so
    # svn -- version
    创建 svn 库主目录(多库模式,一份配置文件管理多个库)
    # mkdir /svn/
    # cd /etc/httpd/conf.d
    # ls
    此时可以看到一个 subversion.conf 配置文件(是在安装 mod_dav_svn 模块时生成的)
    # vi subversion.conf
    添加以下内容
    #Include /svn/httpd.conf
    <Location /svn/>
    DAV svn
    SVNListParentPath on
    SVNParentPath /svn
    AuthType Basic
    AuthName "Subversion repositories"
    AuthUserFile /svn/passwd.http
    AuthzSVNAccessFile /svn/authz
    Require valid-user
    </Location>
    RedirectMatch ^(/svn)$ $1/
    创建/svn/passwd.http 和/svn/authz
    # touch /svn/passwd.http
    # touch /svn/authz
    重启 apache
    # service httpd restart

    3、安装 jsvnadmin

    svnadmin 介绍
    (在 Google Code 上,需要 FQ 才能下载。我们也会把最新版的 jsvnadmin 放到群共享中)
    https://code.google.com/p/jsvnadmin/
    https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip


    4、安装 装 MySQL ( 单独 安装, 与 业 务 系统的数据库分开)
    # rpm -qa | grep mysql ## 查看该操作系统上是否已经安装了 mysql 数据库,
    有的话,可以通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉
    # yum install mysql-server mysql mysql-devel
    # service mysqld start
    # chkconfig --list | grep mysqld
    mysqld 0:off 1:off 2:off 3:off 4:off 5:off 6:off
    用上面的命令查看到 MySQL 并没有设置开机启动,所以需要设置开机启动
    # chkconfig mysqld on
    为了方便远程管理,防火墙中打开 3306 端口
    # vi /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    重启防火墙,使端口配置生效
    # service iptables restart
    设置 MySQL 数据库 root 用户的密码:
    # mysqladmin -u root password 'wusc.123'
    登录数据库:
    # mysql -u root -p
    MySQL 授权远程访问(先用 root 登录 mysql)
    mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wusc.321' WITH
    GRANT OPTION;
    mysql> FLUSH PRIVILEGES;


    5、使用 用 7 Tomcat7 部署 svnadmin
    # cd /root
    使用 wget 下载最新版的 tomcat7 的 tar.gz 包
    # tar -zxvf apache-tomcat-7.0.xx.tar.gz
    # mv apache-tomcat-7.0.xx svnadmin-tomcat
    修改 Tomcat 的端口为 9000 和容器编码为 UTF-8
    # vi /root/svnadmin-tomcat/conf/server.xml
    修改以下标红的内容
    <Server port="9005" shutdown="SHUTDOWN">
    <Connector port="9000" protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443" URIEncoding="UTF-8" />
    防火墙中打开 9000 端口
    # vi /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT
    重启防火墙,使端口配置生效
    # service iptables restart
    # cd /root/svnadmin-tomcat/webapps
    # rm -rf *
    上传 svnadmin.war 到/root/svnadmin-tomcat/webapps 目录
    # cd /root/svnadmin-tomcat/webapps
    解压
    # unzip svnadmin.war -d svnadmin
    备份
    # mv svnadmin.war /root/tools/
    # cd svnadmin/WEB-INF
    # vi jdbc.properties
    内容改为如下
    db=MySQL
    #MySQL
    MySQL.jdbc.driver=com.mysql.jdbc.Driver
    MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8
    MySQL.jdbc.username=root
    MySQL.jdbc.password=wusc.123
    创建 建 n svnadmin 数 据库并导入相应数据 ( UTF- -8 8 编码 )
    执行 db/mysql5.sql 和 db/lang/en.sql
    启动 svnadmin-tomcat
    # /root/svnadmin-tomcat/bin/startup.sh
    浏览器中打开:http://192.168.4.221:9000/svnadmin

    如:输入 admin,wusc.123

    创建库
    此时:
    /svn/目录下会创建一个 wusc_edu 的 SVN 库目录。
    同 时 也 会 多 出 一 个 httpd.conf 文 件 , 内 容 与 subversion.conf 一 样 , 在
    /etc/httpd/conf.d/subversion.conf 中已配置。
    /svn/authz 授权文件中会多出如下内容:
    [aliases]
    [groups]
    wusc_edu_developer=
    wusc_edu_manager=
    wusc_edu_tester=
    [wusc_edu:/]
    @wusc_edu_manager=rw
    以上过程其实是调用了 svn 对应的命令做了相应的操作
    配置库目录权限
    # cd /svn
    # chown -R apache.apache wusc_edu
    # chmod -R 777 wusc_edu
    (如创建新库,需要对新建的库目录执行以上两步授权操作)
    关闭 SELinux(Linux 的访问控制)
    修改/etc/selinux/config 文件
    # vi /etc/selinux/config
    将 SELINUX=enforcing 改为 SELINUX=disabled
    重启机器即可
    # reboot

    6、svn认证失败的解决方法

    修改svn路径下面的对应项目文件里面的conf/svnserve.conf文件,看有没有把password-db = passwd前对#去掉,并且要顶格;authz-db = authz同理,修改realm = My First Repository,改为自己的服务器地址,前面的#号也要去掉,顶格。

  • 相关阅读:
    IIC/I2C从地址之7位,8位和10位详解
    ARM uxtw
    ARM(CM3)的汇编指令
    WZR/XZR ARM
    LDR r, label 和 LDR r, =label的区别
    Distinguishing between 32-bit and 64-bit A64 instructions
    03JavaScript程序设计修炼之道_2019-06-18_20-39-14_事件onload&onmouseover&out
    02-CSS基础与进阶-day6_2018-09-05-20-18-21
    02-CSS基础与进阶-day5_2018-09-03-22-10-39
    02-CSS基础与进阶-day5_2018-09-03-21-41-57
  • 原文地址:https://www.cnblogs.com/wangfg/p/8444562.html
Copyright © 2020-2023  润新知