天天看点

VisualSVN server导入已有仓库zz

超简单搭建功能全面易用的svn服务端 VisualSVN Server+ApachePasswd程序包

安装前准备:

ApachePasswd客户端修改密码程序包(本版置顶贴 svn使用FAQ里就有的),mod_cgi.so模块(任何版本的apache安装文件里都有)

VisualSVN-Server对操作系统的要求为:

•        Windows® XP 

•        Windows 2003 Server 

•        Microsoft® Windows Vista® 

•        Windows 2008 Server 

   集成组件:Subversion 1.5.5,Apache 2.2.9.

第一步、VisualSVN-Server安装:

这个没什么可说的,安装了就知道,一路next,我选用的是https方式,比http的好处大家自己google去吧,客户端唯一与http不一样的就 是访问时多了个s,另外如果访问时不想带端口号,可以用https默认的端口号(443),就是80端口相对于http。

第二步、将已有仓库和用户权限信息无缝导入VisualSVN-Server

网上关于VisualSVN-Server的安装使用说明大部分都是新建仓库、用户和权限的,所以我要有些不同,这也是根据我的实际需要和操作过程来写的。

1、        修改VisualSVN-Server仓库路径指向已有仓库路径(这步也可以省略,通过VisualSVN-Server管理界面导入,但是会花费 一番时间将你的仓库导入到一个你并不希望的路径,为何不直接指定呢,既不需要浪费时间又保持了原来的仓库路径)

方法:打开注册表,regedit搜索RepositoriesRoot,你会发现在HKEY-LOCAL-MACHINE ——〉SOFTWARE——〉VisualSVN下,修改RepositoriesRoot的值为你的仓库路径,假设为G:/Repositories/

2、        修改****/VisualSVN Server/conf/httpd.conf

你会发现这个配置文件比独立安装apache简单多了,只需要修改下段:

<Location /svn/>

  DAV svn

  SVNListParentPath on

#仓库路径

  SVNParentPath "G:/Repositories"  

  SVNIndexXSLT "/svnindex.xsl"

  AuthName "Subversion Repositories"

  AuthType Basic

  AuthBasicProvider file

#用户密码文件

  AuthUserFile "G:/Repositories/htpasswd"  

#权限文件

  AuthzSVNAccessFile "G:/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真是做到十分的精简,连这个目录都删掉了),将ApachePasswd程序包释放到该目录下

C)        修改ApachePasswd.cgi.ini里的用户信息文件路径

D)        配置****/VisualSVN Server/conf/httpd-custom.conf(这个客户个性化配置文件非常好)

原来是空白的,增加

LoadModule cgi_module bin/mod_cgi.so

LoadModule alias_module bin/mod_alias.so

<IfModule alias_module>

    ScriptAlias /cgi-bin/ "E:/Program Files/VisualSVN Server/cgi-bin/"

</IfModule>

好了,重新启动VisualSVN Server。测试一下,打开一个页面,输入https://IP/cgi-bin/ApachePasswd.cgi,出现修改密码页面,尽管还是那么朴实无华,但很亲切