apache+svn部署
1. 前言
Subversion(简称svn)是跨平台的开源版本控制系统,是cvs的接班人,目前绝大多数开源软件都使用svn作为代码版本管理软件。Subversion支持linux和windows,但较多安装在linux下。
svn服务器有两种运行方式:独立服务器和借助于apache。 svn:// http://
svn客户端:tortoisesvn
svn的基本工作思路: 在一台服务器上建立一个源代码库,库里可以存放许多不同项目的源程序。有源代码库管理员统一管理这些源程序。每个用户在使用源代码库之前,首先要把源代码库里德项目文件下载到本地,然后开发人员可以在本地修改,左后用svn命令进行提交,游源代码库统一管理修改。
版本控制解决了:代码管理混乱、解决代码冲突困难、在代码整合期间引发bug、无法对代码的拥有者进行权限控制、项目不同版本的发布困难
配置subversion:
dav目录:是提供apache与mod_dav_svn使用的目录,让他们存储内部数据
db目录:就是所有版本控制的数据存放文件
hooks目录:放置hook脚本文件的目录
locks目录:用来放置subversion见艰苦锁定数据的目录,用来追踪存取文件库的客户端
format文件:是一个文本文件,里面只放了一个整数。表示当前文件库配置的版本号
conf目录:是这个仓库的配置文件(仓库的用户访问账号.权限等)
2. 安装
cat /etc/redhat-release #查看系统版本
CentOS release 5.8 (Final)
uname -r #查看内核
2.6.18-308.el5
yum install httpd httpd-devel subversion mod_dav_svn -y
#yum安装apache、svn,mod_dav_svn是apache+svn结合的模块3. 配置
3.1 查看/etc/httpd/conf/httpd.conf中,apache默认启用用户是否被注释,如果注释,取消注释
sed -i 's/^#User apache/User apache/g' /etc/httpd/conf/httpd.conf
sed -i 's/^#Group apache/Group apache/g' /etc/httpd/conf/httpd.conf3.2 Apache服务器配置SVN访问的目录
cat >> /etc/httpd/conf.d/subversion.conf > /opt/svn/authzsumi1.dump
// 导出sumitest整个项目到sumi1.dump
# cat sumi1.dump | /usr/local/svn/bin/svndumpfilter exclude /fxywy/src > sumi2.dump
// 从sumi1.dump过滤出/fxywy/src目录。Windows中cat换成type
# svnadmin create /data/svn/sumitest2
// 创建新的项目库
# svnadmin load /data/svn/sumitest2 < sumi2.dump
//导出/fxywy/src 到sumitest2库
5.4 删除svn版本库中的文件夹svn delete 可以从工作拷贝或版本库删除一个项目。
# svn delete -m “Deleting file”file:///data/svn/sumitest2/fxywy/
// 删除sumitest2下的/fxywy目录
页:
[1]