VisualSVN-Server对操作系统的要求为:
• Windows® XP
• Windows 2003 Server
• Microsoft® Windows Vista®
• Windows 2008 Server
第一步、VisualSVN-Server安装:
这个没什么可说的,安装了就知道,一路next,我选用的是https方式,比http的好处大家自己google去吧,客户端唯一与http不一样的就是访问时多了个s,另外如果访问时不想带端口号,可以用https默认的端口号(443),就是80端口相对于http。
网上关于VisualSVN-Server的安装使用说明大部分都是新建仓库、用户和权限的,所以我要有些不同,这也是根据我的实际需要和操作过程来写的。
1、 修改VisualSVN-Server仓库路径指向已有仓库路径(这步也可以省略,通过VisualSVN-Server管理界面导入,但是会花费一番时间将你的仓库导入到一个你并不希望的路径,为何不直接指定呢,既不需要浪费时间又保持了原来的仓库路径)
方法:打开注册表,regedit搜索RepositoriesRoot,你会发现在HKEY-LOCAL-MACHINE ——〉SOFTWARE——〉VisualSVN下,修改RepositoriesRoot的值为你的仓库路径,假设为F:\Repositories\
2、 修改****\VisualSVN Server\f
你会发现这个配置文件比独立安装apache简单多了,只需要修改下段:
<Location /svn/>
DAV svn
SVNListParentPath on
#仓库路径
SVNParentPath "F:/Repositories"
SVNIndexXSLT "/svnindex.xsl"
AuthName "Subversion Repositories"
AuthType Basic
AuthBasicProvider file
#用户密码文件
AuthUserFile "F:/Repositories/htpasswd"
#权限文件
AuthzSVNAccessFile "F:/Repositories/authz"
require valid-user
</Location>
保存配置文件,在服务重新启动VisualSVN Server,打开Manager,你会发现仓库、用户、权限都有了,看着好开心啊,比svnmanager方便多了。
第三步:实现客户端修改用户密码
因为VisualSVN也提供收费的客户端软件,在客户端软件里有修改密码功能,但是我们大部分用的还是TortoiseSVN啊,所以这个得自己动手了。大家都知道ApachePasswd客户端修改密码程序包,集成了Apache Server,肯定可以用的。
步骤如下:
A) 将mod_cgi.so copy到****\VisualSVN Server\bin目录下,这是cgi得以执行的必须包
B) 在VisualSVN Server下创建cgi-bin目录(VisualSVN Server真是做到十分的精简,连这个目录都删掉了),将Apache22Passwd程序包释放到该目录下。并且将Apache22Pa
i修改成svnpwd,i.ini修改成svnpwd.ini。
C)因为Apache是2.2版本,所以需要将apache的bin目录下libapr-1.dll、libapriconv-1.dll、libaprutil-1.dll到cgi-bin的目录
D)修改svnpwd.ini里的用户信息的路径,将auth_user_file后面的路径改成用户密码信息的路径,如:auth_user_file=密码修改F:\Repositories\htpasswd
D) 配置****\VisualSVN Server\f(这个客户个性化配置文件非常好)
原来是空白的,增加
LoadModule cgi_module bin/mod_cgi.so
LoadModule alias_module bin/mod_alias.so
<IfModule alias_module>
ScriptAlias /cgi-bin/ "F:/Program Files/VisualSVN Server/cgi-bin/"
</IfModule>
好了,重新启动VisualSVN Server。测试一下,打开一个页面,输入
localhost:8443/cgi-bin/svnpwd
备注:
一、Apache22Passwd说明
这是一个用于修改Apache中AuthUserFile的工具,编写时主要是为了远程修改基于Apache配置的Subversion的用户密码。
目前提供for apache2.0版本及for apache2.2版本。
当Subversion配置成作为Apache的一个模块运行时,在f中可能是类似这下面这样的语句:
<Location /svn>
DAV svn
SVNParentPath C:\SVN_repos
AuthType Basic
AuthName "Subversion repositories"
AuthUserFile C:\SVN_repos\passwd
AuthzSVNAccessFile C:\SVN_f
Require valid-user
</Location>
ApacehPasswd就是用来修改上面配置中的C:\SVN_repos\passwd这个文件的
二、配置文件可用的配置项
[path]
auth_user_file=这里改为你的Subversion所用的AuthUserFile全路径,如C:\SVN_repos\passwd
日志文件名
log_file=svnpass.log
[setup]
password_min_length=1
[html]
title=修改SubVersion密码
description=修改SubVersion密码
your_name = 用户名
old_password = 旧密码
new_password1 = 新密码
new_password2 = 验证新密码
btn_change = 修 改
btn_reset = 重 置
change_password_ok=成功修改密码
change_password_failed=修改密码失败
old_password_error=旧密码错误
server_error=服务器错误
password_must_greater=密码位数必须大于
two_password_not_matched=两密码不一致
please_enter_name=请输入用户名
back=返回
三、一般用时都是将i改名为svnpwd,这样用户修改密码时可以少打些字,
如访问192.168.0.1/cgi-bin/svnpwd就可以修改密码了,
当改名为svnpwd时,配置文件i.ini要相应地改为svnpwd.ini,因为这个脚本是根据自己的文件名配置文件的
发布评论