一、软件准备
1. Apache(apache_2.2.8-win32-x86-no_ssl.msi) http://apache.mirror.phpchina.com/httpd/binaries/win32/
2. Subversion : (1.4.6)
http://subversion.tigris.org/files/documents/15/41687/svn-1.4.6-setup.exe
3. TortoiseSVN (1.4.8)
http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.4.8.12137-win32-svn-1.4.6.msi?download
4. eclipse 客户端
site-1.2.4.zip
注意:如果要安装apache服务,一定需要对应subversion服务端的版本
Subversion(1.4.6) + Apache_2.2.8 no ssl
二、客户端安装
1> 需要site-1.2.4.zip 包,解压缩后有个site-1.2.4的文件夹。
2> Eclipse菜单<help>下面—software updates 中选择 <find and install…> ,选择第二个选项<Search for new features to install> ,点击<next>选项, New Local Site 选项添加刚解压缩的文件夹。
3>勾选几个选项后,finish 完成eclipse – SVN 客户端的安装
4> TortoiseSVN (1.4.8)的安装
三、服务端安装(只配置subversion)
1> 直接安装 svn-1.4.6-setup.exe 服务端程序
2> (eg:)在f:"下面新建文件夹svn;在svn文件夹下建立版本库svnServer 的文件夹,然后用TortoiseSVN建立版本库。
3> 如何启动svn服务(有两种方式)
1) 通过命令行方式启动 : 进subversion bin安装目录> svnserve -d -r f:"svn"svnServer
2)通过windows服务方式启动:
步骤一>需要添加服务到windows中: svnservice -install -d -r f:"svn"svnServer需要卸载windows服务使用: svnservice –remove
步骤二>需要SVNService.exe的服务程序,在命令行中加入。
3) 配置用户名,密码,权限
在新建的版本库f:"svn"svnServer中,进入conf文件夹,该文件夹下面有三个文件进行配置。
svnserve.conf
1)加anon-access = none 任何访问时使用验证
2)打开password-db = passwd 进行用户名密码验证
3)打开authz-db = authz 进行权限验证
Passwd
[users]
# harry = harryssecret
# sally = sallyssecret
admin = 123
zhangchao = 123
authz
[groups]
group_admin = admin
group_user1 = zhangchao
[/]
@group_admin = rw
[/zhangchao]
@group_user1 = rw
注意: 在TortoiseSVN 中repo-browser 查询时,在url 填写时需填入完整的目录名进行权限查看,否则无法打开.
本地查看使用url : svn://localhost/
四、服务端安装(配置subversion + apache)
1. 在架设apache 访问服务时,需要安装 apache2.2.8 no ssl 服务。
需要按一下步骤配置:
1)关于svn 的安装同上
2)安装完成apache 后使用端口80; 可以通过httpd.conf 文件进行修改(listen 8010),在右下角图标中启动apache;这时可以通过IE访问:http://localhost:8010/ 显示 It Works! 的字样。表示apache 启动成功,但是并不表示已经可以访问svn版本库了。如果进行apache+svn的整合,还需要以下配置.
3)第一步:将C:"Program Files"Subversion"bin(svn服务器中的安装目录)中的 mod_authz_svn.so 和 mod_dav_svn.so 复制到 Apache 安装目录 modules"目录下,再将 Subversion 安装目录下面所有的 .dll 文件复制到 Apache"Bin 目录下(注意,这一步非常重要,如果提示覆盖操作,表示版本有问题,选择否)
4)第二步: 保存, 重启 Apache 服务器
修改 httpd.conf 文件,在文件结尾加入如下语句:
#SVN configuration
LoadModule dav_module modules/mod_dav.so
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule dav_fs_module modules/mod_dav_fs.so
LoadModule authz_svn_module modules/mod_authz_svn.so
5)第三步:
再在 httpd.conf 末尾加入如下语句:
<Location /svn>
DAV svn
SVNPath f:"svn"svnServer
# 权限验证
# AuthType Basic
# AuthName "Serv8,serv99"
# AuthzSVNAccessFile C:"svn.access
# AuthUserFile C:"svn.passwd
# Require valid-user
</Location>保存,重启 Apache 服务器。在浏览器中输入 http://localhost:8010/svn/
注意:下面6行注释了,这时暂不考虑权限的问题,重启Apache服务器后,就已经与svn版本库进行整合了。
如果整合成功,会在Apache控制台的左下角显示 svn/1.4.6 字样的版本信息。
2.下面我们来进行关于apache访问的权限设置
这里说明一下:关于架设apache服务后,启动apache 后,apache不再去找SVN的svnserve.conf的相关配置信息了,会进行关于apache的权限验证认证。配置如下:
# 权限验证
# AuthType Basic 打开用户验证
# AuthName "Serv8,serv99" 关于名称
# AuthzSVNAccessFile C:"svn.access 关于分组权限验证文件,与svn中authz相同,可以拷贝过来使用.
# AuthUserFile C:"svn.passwd 该文件需要用apache命令生成
命令如下:
C:"Program Files"Apache Software Foundation"Apache2.2"bin
htpasswd -c passwd zhangchao # apache 创建用户文件命令;第一次生成该文件使用
htpasswd passwd zhangchao1 # 第二次添加用户 命令
htpasswd –help # 使用该命令 查询 修改密码,删除用户等命令参数
五、安装时可能遇到的几个问题
1> svn+apache2.2架设后遇到eclipse重启的问题
解决方法:将环境变量 APR_ICONV_PATH改为APR_ICONV1_PATH 或者下载Subversion 1.4.6的zip包,将环境变量 APR_ICONV_PATH 指向解压后的 iconv文件夹。
2>可以在目录中新建一个内容为 cmd –k 命令的bat批处理文件 ,双击进入当前目录。
3>关于绑定固定域名访问:
需要安装花生壳软件,通过路由绑定端口号。指向固定的域名访问svn资源库。