(引自:
http://www.subversion.org.cn/tsvndoc/tsvn-serversetup.html#tsvn-serversetup-mod_authz_svn)
本人最近由于工作需要研究了一些SVN的配置工作,原来都是用CVS的所以还是需要学习一些的。
为了使用TortoiseSVN(或任何其他Subversion客户端),你需要放置你的版本库,你可以将版本库存于本地并使用
file://协议访问,也可以放置于服务器,使用
http://或
svn://访问,这两种服务器协议也可以被加密,使用
https://或
svn+ssh://。
1、安装Apache
可以安装到Windows2000、WinXP+SP1还是Windows2003中。
a、从Apache网站
http://httpd.apache.org/download.cgi下载Apache,最好是高于2.0.54版,但不要下载最新的如2.2.XX和2.1.XX的。
我下载的是 apache_2.0.59-win32-x86-no_ssl.msi。
b、一旦你有了Apache2安装程序,你可以双击它,然后它会指导你的安装过程,请确认你输入的server的URL正确(如果你的服务器没有dns名称,请直接输入IP地址)。建
议安装Apache
为所有用户,在80端口,作为一个服务
。注意:如果你已经有了IIS或其他监听80段口的程序,安装会失败,如果发生这种情况,直接到程序的安装目录
\Apache Group\Apache2\conf
,打开
httpd.conf
。编辑文件的
Listen 80
为其他可用的端口,例如
Listen 81
,然后重新启动-这样就不会那个问题了。
c、现在可以测试Apache服务器了,将浏览器指向
http://localhost(或ip+端口号)/
-将会看到一个预先配置的网站。
2、安装Subversion
a、从
http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=91下载最新版本的Subversion(我下载的是svn-1.4.3-setup.exe,与apache_2.0.59-win32-x86-no_ssl.msi是珠联璧合!)。
b、运行Subversion安装程序,并根据指导安装,如果Subversion认识到你安装了Apache,你就几乎完成了工作。
3、配置
现在你已经设置了Apache和Subversion,但是Apache不知道如何处理Subversion客户端,例如TortoiseSVN。为了让Apache知道哪个目录是用来作为Subversion版本库,你需要使用编辑器(例如记事本)编辑Apache的配置文件(通常是
c:\program files\apache group\apache2\conf\httpd.conf
):
a、建立版本库
在DOS下输入以下命令(注意:先建立 D:\SVN 目录):
svnadmin create D:\SVN\repository
于是建立了名为repository的版本库,
D:\SVN 目录为以后增加其他所有版本库的父路径。
b、在配置文件最后添加如下几行:
<Location /svn>
DAV svn
SVNListParentPath on
SVNParentPath D:\SVN
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile passwd
#AuthzSVNAccessFile svnaccessfile
Require valid-user
</Location>
这个配置告诉Apache你的所有的Subversion版本库在物理上位于D:\SVN
,版本库对外的URL是: http://localhost(或ip+端口号)/svn/
,访问需要文件passwd
中的用户/密码限制。
如果你希望所有人可以读你的版本库,但是只有特定用户可以写,你可以修改下面几行
Require valid-user
为:
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
c、为了创建passwd
文件,再次打开命令行提示符(DOS),来到apache2目录(通常是c:\program files\apache group\apache2
)通过输入下面的命令创建文件
bin\htpasswd -c passwd <username>
其中<username>为你要创建的用户名称。
如果想继续添加用户则输入如下命令:
bin\htpasswd passwd <username>
d、再次重启Apache服务。
e、将浏览器指向http://localhost(或ip+端口号)//svn/repository
(repository
是你此前创建的版本库名),如果一切正常,你会被提示输入用户名和密码,然后你会看到版本库的内容。
f、如果不能访问,可能是防火墙或杀毒软件把80端口屏蔽了,更改httpd.conf中的端口号即可,或设置防火墙。
QA:
安装Apache 2.0.x 版本常见错误错误:
Syntax error on line 198 of C:/Program Files/Apache Group/Apache2/conf/httpd.conf:
ServerAdmin takes one argument, The email address of the server administrator
Note the errors or messages above, and press the <ESC> key to exit. 24...
更改配置文件第198行为
#ServerAdmin
然后把apache装成WINDOWS的服务,方法是这样的。进入到C:/Program Files/Apache Group/Apache2/bin/目录下,执行下面的命令:apache -k install,这样apache就做为windows的一项服务了,再启动apache就不出现上面的错误提示了。
最后终于把Apache给启动起来了。