SVN管理系统安装及操作
防伪码:学习永远不晚!
前言: SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS、CVS,它采用了分支管理系统,它的设计目标就是取代CVS。互联网上很多版本控制服务已从CVS迁移到Subversion。说得简单一点SVN就是用于多个人共同开发同一个项目,共用资源的目的。
理论:
SVN运行方式:
svn服务器有2种运行方式: 独立服务器和借助 apache运行。两种方式各有利弊,用户可以自行选择。
SVN存储版本数据有两种:
svn存储版本数据也有2种方式: BDB(一种 事务安全型表类型)和 FSFS(一种不需要数据库的 存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
SVN有什么优缺点????
缺点:
1、服务器压力太大,数据库容量暴增。
2、如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。
3、不适合 开源开发(开发人数非常非常多,但是 Google app engine就是用svn的)。但是一般 集中式管理的有非常明确的权限管理机制(例如分支访问限制),可以实现分层管理,从而很好的解决开发人数众多的问题。
优点:
1、管理方便,逻辑明确,符合一般人思维习惯。
2、易于管理,集中式服务器更能保证安全性。
3、代码一致性非常高。
4、适合开发人数不多的项目开发。
5、大部分 软件配置管理的大学教材都是使用svn和 vss。
理论到此结,下面是真实环境中的操作:
服务器:DELL服务器
root用户操作
建议安装前更新操作系统:
更新完成后重启系统:
更新后,重启时centos的系统开机界面:
安装apache并启动
修改httpd配置文件(修改如下)
下面访问一下我们的apache首页
看到这个界面说明我们的apache已经搭建成功了
下面开始搭建我们的SVN服务
安装SVN服务
PS:必须安装mod_dav_svn模块
安装完SVN要重启apache
查看测试是否安装SVN模块
查看SVN版本等信息
创建SVN库主目录 (多库模式,一份配置文件管理多个库使用)
此时就可以看到一个subversion.conf配置文件(是在安装mod_dav_svn模块时生成的)
修改如上的配置文件
添加以下内容:
创建/svn/passwd.http和/svn/authz
重启apache
接下面要安装jsvnadmin
简单介绍一下svnadmin
一般在Google Code上,需要FQ才能下载。
安装包为:svnadmin-3.0.5.zip
(因为事先我已经把包下载到了本地,所以可以直接安装,大家在安装时,如没有此包可在线下载)
安装mysql(单独安装mysql,与业务系统的数据库建议要分开)
查看该系统上是否已安装mysql数据库,如果已安装可以通过rpm -e 或者 rpm -e -nodeps来卸载
查看mysql有没有设置开机启动,设置成开机启动
为了方便我们后期远程管理数据库,可以将防火墙3306端口打开:
重启防火墙,使端口配置生效
设置mysql数据库root用户的密码:
登陆数据库
MYSQL授权远程访问(用root登陆mysql)
刷新一下
使用tomcat7部署svnadmin
如果没有下载可使用wget下载最新版的tomcat7的tar.gz包
修改tomcat的端口号为9000和容器编码为UTF-8
修改一下画红方框的地方:
设置防火墙9000端口,并重启防火墙,使其规则生效
进入svnadmin-tomcat删除webapps下所有的文件
mv走svnadmin.war为了备份此文件:
如解压成功svnadmin.war,进入svnadmin下可以看见WEB-INF
修改jdbc.properties配置文件
修改内容如下图画红方框位置:
创建svnadmin数据库并导入相应数据(UTF-8编码)
执行db/mysql5.sql和db/lang/en.sql
启动svnadmin-tomcat
网页登陆svn
输入账号密码
配置并创建库
设置完后,/svn/目录下会创建一个wusc_edu(自己设置的项目名为啥)的svn库目录。
同时也会多出一个httpd.conf文件,内容与subversion.conf一样,在
/etc/httpd/conf.d/subversion.conf中已经配置。
/svn/authz授权文件中会多出如下内容:
[aliases]
[groups]
wusc_edu_develoer=
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的访问控制)
重启即可
reboot
先安装 SVN 管理客户端 TortoiseSVN,方便对 SVN 库的操作和管理
接下来我们就可以对库进行相应的操作
如:用户组、用户、授权、导入项目
SVN的安装及操作到现在为止就结束了。希望大家可以学会这一堂课的知识。
转载于:https://blog.51cto.com/luchunning/1885162