奇忠诚 发表于 2018-11-24 08:48:51

基于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]
查看完整版本: 基于apache服务的svn服务器之构建