svn配置--apache服务器版(转)
整合apache和svn
把svn/bin目录下的mod_dav_svn.so,mod_authz_svn.so和libdb44.dll,intl3_svn.dll拷贝到
Apache2.2/modules,
接着修改apache的配置文件httpd.conf,将
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
这两句前面的#去掉,再加上下面两句
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
接下来是建立版本库的根目录,我的是f:/demo
然后在apache配置文件最后加上
<Location /svn>
DAV svn
#SVNListParentPath on
SVNParentPath f:/demo // 则在地址栏输入的地址就应该是 http://localhost/svn/demo
</Location>
创建仓库
进去svn/bin目录 执行 svnadmin create f:/svn/demo命令执行成功之后,会在f:/svn/test下面生成很
多的文件和目录
测试运行
重启apache,在浏览器中查看http://localhost/svn/demo,可以看到页面上会显示
Revision 0: / Powered by Subversion version 1.4.6 (r19776).
安装成功,接下来将进行权限设置。
把上面第四步的内容改成
<Location /svn>
DAV svn
#SVNListParentPath on
SVNParentPath F:svn
### apache auth begin
# how to authenticate a user
AuthType Basic
AuthName "Subversion repository"
#保存用户名和密码,这个文件需要用Apache的htpasswd工具创建
AuthUserFile D:/svn/passwd
Require valid-user
### apache auth end
### svn auth begin
# our access control policy
#保存用户访问的权限策略
#AuthzSVNAccessFile D:Program Filessvnsvn_authz
# authentication if necessary
#Satisfy Any
### svn auth end
</Location>
切换到apache安装目录,执行htpasswd -c passwd <username>,这里<username>是你想要加入的用户
名。执行这个命令成功以后就会在bin目录下建立一个passwd文件,之后如果再加入新的用户和更改已有
用户的密码,执行htpasswd passwd <username>即可.
然后把这文件剪切到AuthUserFile D:/svn/passwd
[groups]
test-developers = zxm
everyone = @test-developers
[SVNSource:/] //这表示,仓库SVNSource的根目录下的访问权限
@test-developers = rw
[SVNSource:/test] //SVNSource仓库下test目录的访问权限
@test-developers = rw // 如果在前面加上@符号,则表示这是个群组权限设置
然后重启apache,刷新下http://localhost/svn/test,输入用户名密码,会再次看到刚刚的页面,那么服务
器端就算是安装成功了.
客户端
客户端比较简单,我下载的是nchc.dl.sourceforge.net/sourceforge/tortoisesvn/TortoiseSVN-
1.6.2.16344-win32-svn-1.6.2.msi
直接安装,重启下电脑就行了.svn客户端的用法,手册上应该有吧.
然后再下个中文包,可以去官网上下.http://subversion.tigris.org/,开始我以为安装好后就直接是中
文的,还是要设置一下,语言选简体中文就好了,当然E文好的童鞋可以不用了.
最后..导入新项目到版本库,俺在这里犯了一个致命错误,在以前公司用的不是apache,而是svnserve,可
能就是这个不同?但是我的版本库url应该还是上面的地址:http:localhost/svn/test,俺把http换成了
svn...都是由于目标主机积极拒绝,无法连接.后来也不知道怎么就一下子醒悟过来...改了..然后就看到
那久违的画面..嘎嘎..