linux学习:持续集成篇--svn版本管理系统的安装与使用-02

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux学习:持续集成篇--svn版本管理系统的安装与使用-02相关的知识,希望对你有一定的参考价值。

1、安装Apache

 a、安装,并设置为开机启动

    yum install httpd httpd-devel
    service httpd start
    chkconfig httpd on

 b、将端口改为80

    vi /etc/httpd/conf/httpd.conf 
    
    #ServerName www.example.com:80
    ServerName localhost:80

  c、访问http://192.168.175.9/

技术分享


2、安装SVN服务

   a、必须安装mod dav svn模块

    yum install mod_dav_svn subversion

 b、安装完svn后要重启apache

    service httpd restart

 c、安装完后会如下出现文件

    [[email protected] conf.d]# cd /etc/httpd/conf.d/
    [[email protected] conf.d]# ll
    total 12
    -rw-r--r--. 1 root root  392 Jan 12 12:10 README
    -rw-r--r--. 1 root root 1042 Aug 17  2015 subversion.conf
    -rw-r--r--. 1 root root  299 Dec 13 04:27 welcome.conf
    [[email protected] conf.d]#

 d、查看测试是否安装SVN模块

    ls /etc/httpd/modules/ | grep svn

   技术分享

 e、创建SVN库主目录(多库模式,一份配置文件管理多个库)

    mkdir /svn/

 f、修改/etc/httpd/conf.d/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/

 g、创建/svn/passwd.http和/svn/authz

    touch /svn/passwd.http
    touch /svn/authz

 h、重启apache

    service httpd restart

3、安装jsvnadmin

  下载:https://code.google.com/archive/p/jsvnadmin/downloads

      技术分享

 jsvnadmin依赖db,我们这里采用的是mysql,所有此处还要安装mysql(单独安装,与业务系统的数据库分开)

安装Mysql

 a、查看是否已经安装了mysql数据库(有的话,通过rpm -e命令或rpm -e --nodeps来卸载)

    rpm -qa | grep mysq

 b、yum命令安装

    yum install mysql-server mysql mysql-devel
    service mysqld start

 c、查看是否开机启动

    [[email protected] ~]# chkconfig --list | grep mysqld
    mysqld         	0:off	1:off	2:off	3:off	4:off	5:off	6:off

   上面表示没有开机启动,所有需要设置开机启动

    chkconfig mysqld on

 d、重置root的密码

   mysqladmin -u root password ‘123456‘

 e、登录到数据库

      mysql -u root -p

 f、mysql授权远程访问(先用root登录mysql)

    GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘123456‘ with grant option;
    FLUSH PRIVILEGES;

 g、部署svnadmin到tomcat下

  1)、修改配置文件

    vi /opt/svnadmin-tomcat/webapps/svnadmin/WEB-INF/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=123456
    #下面的删除

  2)、创建svnadmin数据库,并导入相应的数据(UTF-8)

   执行db/mysql5.sql和db/lang/en.sql

  3)、启动tomcat

   访问:初始账号密码为admin/123456  

    http://192.168.175.9:9000/svnadmin/  

     技术分享

 注意:在测试svnadmin是否运行正常的时遇到 Incorrect string value: ‘\xE7\x99\xBB\xE5\xBD\x95‘ for column ‘lbl‘ 错误

 解决:进入svnadmin数据库执行下面的语句

    ALTER TABLE i18n MODIFY COLUMN lbl VARCHAR(255) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL;

4使用jsvnadmin

 a)、创建库

    技术分享

  创建完成后,/svn下会多出两个文件 httpd.conf和liu_wx,httpd.conf与/etc/httpd/conf.d/subversion.conf配置文件内容的是一样的

  /svn/authz授权文件会多出如下内容:

    [aliases]
    [groups]
    liu_wx_developer=
    liu_wx_manager=
    liu_wx_tester=

    [liu_wx:/]
    @liu_wx_manager=rw

 配置库目录权限:

    [[email protected] svn]# chown -R apache.apache liu_wx
    [[email protected] svn]# chown -R 777 liu_wx

 (如创建新库,需要对新建的库目录执行以上两步授权操作)

关闭SELinux(Linux的访问控制):修改/etc/selinux/config文件

    #将SELINUX的值改为disabled
    SELINUX=disabled

 重启reboot

本文出自 “我爱大金子” 博客,请务必保留此出处http://1754966750.blog.51cto.com/7455444/1909192

以上是关于linux学习:持续集成篇--svn版本管理系统的安装与使用-02的主要内容,如果未能解决你的问题,请参考以下文章

使用Maven+Nexus+Jenkins+Svn+Tomcat+Sonar搭建持续集成环境

linux学习:持续集成篇--sonarqube代码质量管理平台的介绍与安装-04

K8S基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)

linux学习:持续集成篇--安装Jenkins持续集成平台-05

K8S基于Docker+K8S+GitLab/SVN+Jenkins+Harbor搭建持续集成交付环境(环境搭建篇)

持续集成基本概念