svn可以单独搭建,客户端使用svn协议访问;也可以和apache一起搭建,客户端使用http或者https协议访问
搭建环境
系统 : linux
安装文件 :
httpd-2.2.22.tar.bz2
subversion-1.6.5.tar.bz2
subversion-deps-1.6.5.tar.bz2
安装apache
解压
tar jxvf httpd-2.2.22.tar.bz2
编译安装
$./configure --prefix=/home/space/magicbox/env/apache --enable-so --enable-dav --enable-dav-fs --enable-ssl --enable-maintainer-mode
$make
$make install
安装svn
将subversion-1.6.5.tar.bz2,subversion-deps-1.6.5.tar.bz2放在同一目下
分别解压,两个压缩包都会解压进subversion-1.6.5文件夹中
cd subversion-1.6.5
编译安装
$./configure --prefix=/home/space/tool/subversion --with-apxs=/home/space/magicbox/env/apache/bin/apxs --with-apr=/home/space/magicbox/env/apache/bin/apr-1-config --with-apr-util=/home/space/magicbox/env/apache/bin/apu-1-config
$make
$make install
完成后,查看apache httpd.conf文件,会怎加
LoadModule dav_svn_module modules/mod_dav_sav.so
LoadModule authz_svn_module modules/mod_authz_svn.so
这是apache svn处理模块,经过配置后,一定url格式的访问将有这两个模块控制,访问svn路径
配置apache和svn
修改apache httpd.conf文件,将里面的user和group换成你系统中存在的用户,并且该用户在系统中要有用到的文件系统权限
使用apache 的htpasswd命令创建用户和密码文件(该文件相当于用户数据库,用户apache和svn访问权限控制)
./htpasswd -c 文档存放路径 username (创建第一个用户时使用-c,表需要创建文件)
./htpasswd -m 文档存放路径 username (之后追加用户时使用-m参数)
svn创建svn库
使用svn命令
./svnadmin create /home/work/workdir/svn/repos1
./svnadmin create /home/work/workdir/svn/repos2
/home/work/workdir/svn 为svn跟路径
repos1和repos2为svn的两个库
在httpd.conf文件的结尾加
<Location /svn>
DAV svn
SVNParentPath /home/work/workdir/svn
AuthType Basic
AuthName "Hello welcome to here"
AuthUserFile /home/work/local/svn/passwd --上面用htpasswd创建的用户文件地址
AuthzSVNAccessFile /home/work/workdir/svn-repository/repos1/conf/authz -- 下面解释
Require valid-user
</Location>
配置 svn库
repos1和repos2均为svn库,现拿repos1做为例子
cd /home/work/workdir/svn/repos1/conf
发现有三个文件authz、passwd和svnserve.conf
vi svnserve.conf
打开并修改以下两行
password-db = /home/work/local/svn/passwd --上面用htpasswd创建的用户文件地址
authz-db = /home/work/workdir/svn-repository/repos1/conf/authz --下面解释
authz的解释,同passwd文件一起,供apache、svn访问认证和授权,passwd提供认证数据,而authz提供授权数据,这个文件可以使用svn库中的conf文件中的authz也可以自己创建,
内容如下
[groups]
rd = user1,user2 --passwd文件中存在的用户,rd代表用户组,在组上赋权限
qa = --同上
[repos1:/] --对svn库repos1的根目录赋权,但随svn启动命令不同,写的不同
@rd = rw --对rd组赋读写权限
@qa = r
启动apache
./apachectl start
启动svn
svnserve -d -r /home/work/workdir/svn
解释
-r 后是svn根路径,如果路径一直到摸个库,则代表单独起着一个svn库
例如
svnserve -d -r /home/work/workdir/svn/repos1
此时上面authz的配置应该写成
[:/] --对svn库repos1的根目录赋权,但随svn启动命令不同,写的不同
@rd = rw --对rd组赋读写权限
@qa = r
至此,你用浏览器可以访问http://localhost/svn/repos1查看svn了
分享到:
相关推荐
在windows下搭建基于apache的SVN环境.pdf
本地搭建apache+svn服务端,亲测可以使用,从网上找了很多。Apache是安装版本,不需要额外配置,里面也有操作说明
windows下svn+apache搭建svn服务器.docx
在windows下搭建基于apache的SVN环境
apache + svn 服务器搭建 包含apache安装包,和svn安装包 apache_2.2.11-win32-x86-openssl-0.9.8i.msi svn-win32-1.5.4
Apache+SVN服务器环境搭建[文].pdf
详细讲述了apache下搭建svn服务器的过程
非常便利的centos搭建PHP+mysql+apache+svn环境搭建文档,只需复制粘贴
在windows下搭建基于apache的SVN环境(new).doc
详细描述了如何在在windows下搭建基于apache的SVN环境,包括一些所需的安装资源的下载路径都包含在里面
linux下apache+SVN搭建完美版.
subversion+apache+svn服务器配置图解
对在Windows下搭建基于Apache的SVN环境的配置指南,以及常见的问题的说明与解决。
window下 apache+svn搭建步骤(转) - Apache[不停的补]
Apache+SVN+Trac搭建项目管理服务器的安装与配置详解
与之相关的工具包,和搭建文档。Apache svn trac
搭建SVN + Apache 服务器 服务器 linux 6.5 亲自搭建两次,绝对可用
apache2.2+svn1.5.3搭建版本控制服务器
CentOS 6.2 服务器下搭建Apache+SVN
这是我自己根据我的配置过程写的一个在windows下配置apache和svn的文档,如果有什么不足可随时Q我, QQ:171670146。