设为首页 收藏本站
查看: 985|回复: 0

[经验分享] SVN版本管理系统的安装 CentOS + Subversion + Apache + Jsvnadmin

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-5-27 09:23:39 | 显示全部楼层 |阅读模式
CI服务器:192.168.4.221
root用户操作                          

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

安装apache
# yum install httpd httpd-devel
# service httpdstart
# chkconfig httpdon

# vi/etc/httpd/conf/httpd.conf
找到ServerName 并修改成
ServerNamelocalhost: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/
                              wKiom1dGqKnhCzbOAACHPEiFe1o459.jpg


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

安装完svn后要重启apache
# service httpdrestart

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

安装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 | grepmysql      ## 查看该操作系统上是否已经安装了mysql数据库,
有的话,可以通过 rpm -e 命令 或者rpm -e --nodeps 命令来卸载掉
# yum installmysql-server mysql mysql-devel
# service mysqldstart

# chkconfig --list| grep mysqld
mysqld          0:off   1:off  2:off   3:off   4:off  5:off   6:off
用上面的命令查看到MySQL并没有设置开机启动,所以需要设置开机启动
# chkconfig mysqldon

为了方便远程管理,防火墙中打开3306端口
# vi/etc/sysconfig/iptables
-A INPUT -m state --state NEW-m tcp -p tcp --dport 3306 -j ACCEPT
重启防火墙,使端口配置生效
# service iptablesrestart

设置MySQL数据库root用户的密码:
# mysqladmin -uroot password 'wusc.123'
登录数据库:
# mysql -u root -p

MySQL授权远程访问(先用root登录mysql)
mysql> GRANT ALLPRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wusc.321' WITH GRANT OPTION;
mysql> FLUSHPRIVILEGES;


使用Tomcat7部署svnadmin
# cd /root
使用wget下载最新版的tomcat7 的tar.gz包
# tar -zxvfapache-tomcat-7.0.xx.tar.gz
# mvapache-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 iptablesrestart

# cd /root/svnadmin-tomcat/webapps
# rm -rf *

上传 svnadmin.war 到/root/svnadmin-tomcat/webapps目录
# cd/root/svnadmin-tomcat/webapps
解压
# unzipsvnadmin.war -d svnadmin
备份
# mv svnadmin.war/root/tools/
# cdsvnadmin/WEB-INF
# vijdbc.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/
wKiom1dGqMrj73vVAABgtxeo9GE488.jpg
如:输入admin,wusc.123
wKioL1dGqdTDt8PlAACClY5ac5o339.jpg

创建库
wKiom1dGqUuCw6OpAACkyEVUTlw840.jpg
wKiom1dGqVqiDKKBAACxPXyDNX0376.jpg

此时:
/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 -Rapache.apache wusc_edu
# chmod -R 777wusc_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)导入项目

QQ截图20160527092326.png


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-222465-1-1.html 上篇帖子: Maven私有库和本地库的安装与配置 Sonatype Nexus + Maven 下篇帖子: Dubbo监控中心的介绍与简易监控中心的安装 管理系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表