基于apache服务的svn服务器之构建
svn是一款非常不错的开源的版本控制软件,现在就其搭建过程做如下记载,主要是借助apache进行工作的。一.环境准备
二.svn配置
三.apache配置
四.svn常见示例
一.环境准备
1.系统CentOS 6,所需软件
subversion-1.6.11-9.el6_4.i686
mod_dav_svn-1.6.11-9.el6_4.i686
httpd-2.2.15-26.el6.centos.i686
注:这些软件我都是yum安装的,如果大家想获取最新软件包,可以去相应官网去下载。
二.svn配置
1.安装svn相关软件包
# yum installsubversion
2.创建svn用户
# useradd svn
3.创建版本库
# mkdir -p /opt/svn/
# su svn 切换用户
$ svnadmin create /opt/svn/product/ 创建版本库
$ cd /opt/svn/product/
$ ls
confdbformathookslocksREADME.txt
$ svnadmin create /opt/svn/longbinary创建版本库
$ ls /opt/svn/longbinary/
confdbformathookslocksREADME.txt
三.apache配置
1.安装apache及svn模块
# yum install httpd mod_dav_svn
# ls /etc/httpd/modules/|grep svn 验证svn模块
mod_authz_svn.so
mod_dav_svn.so
2.apache相关配置
2.1 /etc/httpd/conf.d/subversion.conf配置如下
加载模块
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
DAV svn 在apache启用svn模块
SVNParentPath /opt/svn/ 在些路径下寻找版本库
AuthzSVNAccessFile /opt/svn/authz.conf 访问控制文件
AuthType Basic 认证类型为基本认证
AuthName "welcome svn" 欢迎语
AuthUserFile /opt/svn/passwd 密码控制文件
Require valid-user 用户密码正确可访问版本库
2.2 创建访问控制用户
# htpasswd -c /opt/svn/passwd admin
New password:
Re-type new password:
Adding password for user admin
2.3 认证authz.conf配置如下
admin = rw
admin = rw
admin = rw
3.其他
3.1 确保apache用户对版本库有读写权限
# chown -R apache:apache product/
# chown -R apache:apache longbinary/
# ls -al | grep '^d'
drwxr-xr-x.7 apache apache 4096 6月28 23:32 longbinary
drwxr-xr-x.6 apache apache 4096 6月28 18:17 product
3.2 启动svn httpd
# /etc/init.d/svnserve start
正在启动 svnserve: [确定]
# /etc/init.d/httpd start
正在启动 httpd:httpd: [确定]
4.验证
四.svn常见示例
1.导入目录
# svn import test http://192.168.4.44/svn/product --message "resivion 1"
2.导出目录
# svn checkout http://192.168.4.44/svn/product/
3.查看版本内容
# svn list http://192.168.4.44/svn/product
页:
[1]