svn代码 目前大多数公司 管理代码都是用这个 这个比较方便简单,git用的人数也比较多,我们下面来部署一下这个程序
svn+apache集成
系统环境
# cat /etc/redhat-release CentOS release 6.6 (Final)
本服务器IP地址
10.20.0.100
安装相关的包
#yum -y install httpd mod_dav_svn subversion
SVN服务器的配置
创建一个存放目录svn的文件
#mkdir /data/svn -p
新建一个版本仓库
#svnadmin create /data/svn/# cd /data/svn/ # lsconf dav db format hooks locks README.txt
赋予权限
chown -R apache.apache /data/svn/
配置apache的subversion.conf
加载mod_dav_svn模块,一般apache2己正常加载这两个模块 apache需要加载mod_dav_svn模块。如果apache是按照与预设目录安装的,mod_dav_svn模块应该会安装在apache安装位置(默认路径是/etc/httpd/)的 modules子目录内。同时apache的配置文件httpd.conf(默认路径为etc/httpd/conf/)中已经使用LoadModule指令加载了该模块(如果没有,手动添加)注意这个指令必须出现在其它的Subversion相关指令之前。还要加载mod_authz_svn.so模块。
检查是否安装好
# ll /etc/httpd/modules/*_svn.so -rwxr-xr-x 1 root root 13456 Aug 17 2015 /etc/httpd/modules/mod_authz_svn.so -rwxr-xr-x 1 root root 155360 Aug 17 2015 /etc/httpd/modules/mod_dav_svn.so
检查已经安装成功
配置文件
# vim /etc/httpd/conf.d/subversion.conf
<Location /svn-test> DAV svn # SVNParentPath /var/www/svn SVNPath /data/svn SVNListParentPath on # # Limit write permission to list of valid users. # <LimitExcept GET PROPFIND OPTIONS REPORT> # # Require SSL connection for password protection. # # SSLRequireSSL # AuthType Basic AuthName "svn for project" AuthUserFile /data/svn/conf/passwd AuthzSVNAccessFile /data/svn/conf/authz Require valid-user # </LimitExcept> </Location>
AuthUserFile /data/svn/conf/passwd #:密码验证 AuthzSVNAccessFile /data/svn/conf/authz #:权限控制 配置svn用户密码
#htpasswd -c /data/svn/passwdfile haha
显示
#cd /data/svn/conf ## cat passwd haha:HIwgEGytY.okI
查看权限配置
# cat authz
[/]
haha = rw
重启apache
# service httpd restart
连接测试
时间: 2024-10-29 10:46:14