centos5 svn安装、部署、迁移与apache整合
2012-07-13 17:20
387 查看
简介:
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
运行方式
svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊,用户自行选择。
存储数据
svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
详见subversion。
编辑本段
集中式版本管理系统
Svn是一种集中式文件版本管理系统。
集中式管理的工作流程如下图:
一、安装
二、建立svn项目主路径
三、使用svnadmin命令创建SVN项目库(1.2版本以后默认使用fsfs存储方式)
注:你可以指定SVN库的存储方式
或者:
四、建立一个apache认证用户测试(如使用数据库认证或AD、openldap认证方式,此步省略)
创建认证数据库(如果使用apache用户认证文件方式,此步省略)
创建数据库
创建用户svn
创建用户表
添加测试帐号
五、创建SVN访问控制文件
修改文件内容:
注:[groups]下面的组里可以有多个用户,用“,”隔开
六、导入SVN项目库(在这里使用的是迁移老的SVN库)
导出原170机器数据库
导入SVN项目库
七、目录赋权
八、apache与SVN整合
修改文件
重启apache服务器
完成!
访问URL: http://192.168.1.180/svn/ 验证成功
转贴请注明出处:http://blog.csdn.net/chinese_tiger/article/details/7744822
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
运行方式
svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊,用户自行选择。
存储数据
svn存储版本数据也有2种方式:BDB(一种事务安全型表类型)和FSFS(一种不需要数据库的存储系统)。因为BDB方式在服务器中断时,有可能锁住数据,所以还是FSFS方式更安全一点。
详见subversion。
编辑本段
集中式版本管理系统
Svn是一种集中式文件版本管理系统。
集中式管理的工作流程如下图:
一、安装
[root@server-180 ~]#yum install httpdmod_dav_svn subversion mysql-*mod_dav_svn是整合svn通过apache访问的一个模块。
二、建立svn项目主路径
[root@server-180 ~]#mkdir -p /data/eucita
三、使用svnadmin命令创建SVN项目库(1.2版本以后默认使用fsfs存储方式)
[root@server-180 ~]#svnadmin create /data/ecuita/svn
注:你可以指定SVN库的存储方式
[root@server-180 ~]#svnadmin create --fs-type fsfs /data/eucita/svn
或者:
[root@server-180 ~]#svnadmin create --fs-type bdb /data/eucita/svn
四、建立一个apache认证用户测试(如使用数据库认证或AD、openldap认证方式,此步省略)
[root@server-180 ~]#htpasswd -c /data/eucita/svn.htpasswd test [root@server-180 ~]#htpasswd /data/eucita/svn.htpasswd test1
创建认证数据库(如果使用apache用户认证文件方式,此步省略)
[root@server-180 ~]#mysql -uroot -p
创建数据库
mysql>create database svn; mysql>use svn;
创建用户svn
mysql>GRANT ALL PRIVILEGES ON *.* TOsvn@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
创建用户表
mysql> CREATE TABLE user(username CHAR(20) NOT NULL,passwd CHAR(20) NOT NULL,PRIMARY KEY (username));
添加测试帐号
mysql> insert into user values('test',ENCRYPT('123456')); mysql> insert into user values('test1',ENCRYPT('123456'));
五、创建SVN访问控制文件
[root@server-180 ~]#touch/data/eucita/svn/conf/authz
修改文件内容:
[groups] all = test1 admin = test [/] @admin = rw * = rw
注:[groups]下面的组里可以有多个用户,用“,”隔开
六、导入SVN项目库(在这里使用的是迁移老的SVN库)
导出原170机器数据库
[root@server-170 ~]#svnadmin dump /data/repository/svn >svn.bak
svnadmin参数介绍: 参数介绍: -r [--revision] :指定版本ARG(或X:Y范围) --incremental :以增量方式进行转存 --deltas :在转存输出中使用差异 -q [--quiet] :在标准错误输出不显示进度(仅错误)
导入SVN项目库
[root@server-170 ~]#svnadmin load /data/eucita/svn < svn.bak
七、目录赋权
[root@server-180 ~]#chown -R apache.apache/data/eucita/ [root@server-180 ~]#chmod -R 755/data/eucita/
八、apache与SVN整合
修改文件
[root@server-180 ~]# vim /etc/httpd/conf.d/subversion.conf
<Location /svn/> DAV svn SVNParentPath /data/eucita AuthType Basic AuthName "Eucita Svn" AuthUserFile /data/eucita/svn/svn.passwd AuthzSVNAccessFile "/data/eucita/svn/conf/authz" Require valid-user </Location>
重启apache服务器
[root@server-180 ~]#service httpd restart
完成!
访问URL: http://192.168.1.180/svn/ 验证成功
转贴请注明出处:http://blog.csdn.net/chinese_tiger/article/details/7744822
相关文章推荐
- RHEL5安装SVN整合APACHE
- Linux + SVN + Apache 安装与整合
- SVN与Apache HTTP服务器的整合安装
- linux下源码包安装svn与apache整合
- 企业IT基础架构迁移整合序列之四:Lync Server安装部署
- svn服务器安装配置,SVN服务器使用教程,版本控制器,svn与apache整合
- Linux 下 Trac SVN apache SSL 配置安装以及整合
- SVN与Apache HTTP服务器的整合安装
- SVN Server安装部署攻略(Linux+SubVersion+Apache)
- svn+apache 安装和使用 并与Nginx 整合
- SVN Server安装部署攻略(Linux+SubVersion+Apache)
- centos6.4 64bit部署安装apache+svn
- Tomcat安装,并与Apache整合,安装SVN-WebClient
- SVN Server安装部署攻略(Linux+SubVersion+Apache)
- svn的安装(整合apache、ldap)包括错误解决post commit FS processing had error
- svn+apache 安装和使用 并与Nginx 整合
- 解决svn服务端与apache整合安装不正确的问题
- svn+apache+linux安装部署
- Svn安装与整合Apache
- SVN Server安装部署攻略(Linux+SubVersion+Apache)