现在的位置: 首页 > 综合 > 正文

Windows下SVN配置

2013年08月14日 ⁄ 综合 ⁄ 共 3159字 ⁄ 字号 评论关闭

方案一:Visual SVN + Tortoise SVN

下载:

Visual SVN server 2.0.4http://www.visualsvn.com/files/VisualSVN-Server-2.0.4.msi

Visual SVN也有客户端,主要是做Visual Studio的插件

Tortoise SVN 1.6.3http://downloads.sourceforge.net/tortoisesvn/TortoiseSVN-1.6.3.16613-win32-svn-1.6.3.msi?download

Tortoise SVN 1.6.3语言包:http://downloads.sourceforge.net/tortoisesvn/LanguagePack_1.6.3.16613-win32-zh_CN.msi?download

配置:

1、修改IIS的端口

2、Repositoriesnew一个,比如test,勾选Create default structure

3、新建一个userliefdiy,创建密码:liefdiy

4、设置Visual SVN的端口为80Server Name可以设置为本机IP,如172.18.4.25,这样在浏览器中就可以直接http://172.18.4.25/svn/test

5、右键Tortoise SVN中版本浏览器输入http://172.18.4.25/svn/test,输入用户名和密码登陆。

6、新建一个空文件夹,右键,SVN检出即可。

方案二:Apache + SVN + Tortoise SVN

下载:

CollabNet Subversion Server and Client v1.6.3 (for Windows) http://www.collab.net/servlets/OCNDirector?id=CSVN1.6.3WINS

apache 2.2.11http://labs.xiaonei.com/apache-mirror/httpd/binaries/win32/apache_2.2.11-win32-x86-openssl-0.9.8i.msi

配置:

1、安装apache。安装目录不能出现中文,安装好后http://localhost显示it works则安装成功

2、安装SVN

1) 进入Subversion的安装目录,将/Subversion/bin/目录下的mod_authz_svn.somod_dav_svn.so拷贝到Apache安装目录/Apache2.2/modules/下;

2) 进入Subversion的安装目录,拷贝文件libdb44.dllApachemodules目录;(注:这个不是必须的,文件名跟版本有差异如libdb43.dll

3) 使用文本编辑器编辑Apache的配置文件(/Apache2.2/conf/httpd.conf),修改以下内容:

去掉以下两行的#号:

#LoadModule dav_module modules/mod_dav.so

#LoadModule dav_fs_module modules/mod_dav_fs.so

LoadModule节的最后添加以下两行:

LoadModule dav_svn_module modules/mod_dav_svn.so

LoadModule authz_svn_module modules/mod_authz_svn.so

3、安装Tortoise SVN

4、apache/Apache2.2/conf目录下,修改httpd.conf文件:

<Location /svn/>

DAV svn          

SVNListParentPath on

SVNParentPath "D:/source/SVN"

# SVNIndexXSLT "/svnindex.xsl"   //使用列表模板

AuthName " Subversion repositories 版本控制中心"

AuthType Basic

# AuthBasicProvider file                     //似乎subversion 1.4.5不支持此项

AuthUserFile "D:/source/SVN/test1/htpasswd"

AuthzSVNAccessFile "D:/source/SVN/test1/authz"               

require valid-user                

#<LimitExcept GET PROPFIND OPTIONS REPORT> //下面表示允许匿名读取

#Require valid-user

#</LimitExcept>

</Location>

RedirectMatch ^(/svn)$ $1/

说明:

SVNParentPath是要建设版本库的根目录,在这个根目录下可以建立多个项目,例如D:/source/SVN/test1D:/source/SVN/test2等,我们将要创建的密码和授权文件都要放在每个项目的目录下,如D:/source/SVN/test1/passwdD:/source/SVN/test1/access

5、创建密码和授权文件:

a) 创建版本库:svnadmin create  D:/source/SVN/test1

b) 创建密码:cmd进入apachebin目录,htpasswd -c  D:/source/SVN/test1/passwd  liefdiy,意为在那个目录下新建了一个passwd的密码文件,授给用户liefdiy

c) 创建授权文件:

[groups]

admin = liefdiy

guests = guest

为所有库指定默认访问规则

所有人可以读,管理员可以写,危险分子没有任何权限,[/]代表根目录

[/]

* = r

@admin = rw

@guests = r

dangerman = 

允许开发人员可以完全访问他们的项目版本库

#[test1:/]

#@admin = rw

#@guests = r

#[test2:/]

#@admin= rw

说明:

[group]下是创建一个组,组名可以任意,关键是给它权限,wrx

[test1:/]是指项目test1下的授权

最后,启动apache,在Tortoirse SVN的版本浏览器中输入http://172.18.4.25:81/svn/test1即可。另有参考文档如下。

<Location /svn>

Subversion版本库的URLhttp://MyServer/svn/ 

DAV svn

告诉Apache是哪个模块响应那个URL的请求-此刻是Subversion模块

SVNListParentPath on

对于Subversion1.3或者更高版本,这个指示表示显示所有SVNParentPath下的版本库

SVNParentPath D:/SVN

告诉Subversion需要查看的版本库位于D:/SVN之下

AuthType Basic

激活基本认证,就是用户名/密码

AuthName "Subversion repositories"

用来说明何时弹出要求用户输入认证信息的认证对话框

AuthUserFile passwd

指定使用的认证密码文件

AuthzSVNAccessFile

位置Subversion版本库的访问控制文件的路径

Require valid-user

指定只有输入了正确的用户/密码的用户可以访问URL

抱歉!评论已关闭.