SVN版本管理系统的安装 CentOS + Subversion + Apache + Jsvnadmin-阿里云开发者社区

开发者社区> whs0668> 正文

SVN版本管理系统的安装 CentOS + Subversion + Apache + Jsvnadmin

简介:
+关注继续查看

CI服务器:192.168.4.221
root用户操作

建议安装前更新操作系统
yum update
更新完成后重启
reboot

安装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/

安装SVN服务
yum install mod_dav_svn subversion
必须安装mod_dav_svn模块

安装完svn后要重启apache
service httpd restart

查看测试是否安装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

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

安装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;

使用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

创建svnadmin数据库并导入相应数据(UTF-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

SVN版本管理平台(Subversion+Apache+Jsvnadmin)的使用:

先安装SVN管理客户端TortoiseSVN,方便对SVN库的操作和管理
http://tortoisesvn.net/downloads.html
(注意64位系统要安装64位版)

接下来可以对wusc_edu库进行相应的操作
(1) 用户组
(2) 用户
(3) 授权
(4) 导入项目

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
CentOS 6.X系统安装
应用场景 有时候,比如做个试验,测试一些东西,需要使用linux系统进行操作。那么就需要搭建linux环境,linux系统。
902 0
CentOS 7.X系统安装
应用场景 有时候,比如做个试验,测试一些东西,需要使用linux系统进行操作。那么就需要搭建linux环境,linux系统。
923 0
PageAdmin Cms建站系统如何修改后台登录目录
pageadmin修改后台登录目录的解决办法
273 0
Apache Flink 1.9.0版本新功能介绍
摘要:Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能。目前,Apache Flink 1.9.0版本已经正式发布,该版本有什么样的里程碑意义,又具有哪些重点改动和新功能呢?本文中,阿里巴巴高级技术专家伍翀就为大家带来了对于Apache Flink 1.9.0版本的介绍。
2478 0
正尝试安装的adobe flash player不是最新版本
正尝试安装的adobe flash player不是最新版本: [HKEY_LOCAL_MACHINE\SOFTWARE\Macromedia\FlashPlayer\SafeVersions]将"9.0"=dword:00400000" 项删除,。
640 0
网站建设教程:PageAdmin网站系统标签功能的实现
司之前老网站采用的织梦网站系统,由于最近被黑客攻击导致挂马,并且官方停止了更新,领导要求新的网站采用pageadmin网站系统重新改版,小编在学习和使用中学到了有很多实用的技巧,其中标签这块制作很多做seo优化的朋友都会用到。
1402 0
+关注
28
文章
6
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载