Chinaunix首页 | 论坛 | 博客
  • 博客访问: 866026
  • 博文数量: 189
  • 博客积分: 4310
  • 博客等级: 上校
  • 技术积分: 1925
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-27 08:56
文章分类

全部博文(189)

文章存档

2015年(1)

2013年(2)

2012年(1)

2011年(39)

2010年(98)

2009年(48)

分类: Python/Ruby

2011-10-27 09:29:19

  本文主要介绍Subversion的在windows下的安装及配置入门。

一、概述

SVN作为一款开源工具,有着各种各样的配置方案。比较流行的是Apache+svn+TortoiseSVN。该配置方案扩展性强,功能也十分丰富,但在服务器端没有图形化控制工具,造成了日常管理的诸多不便。好在已经有应用较为成熟的服务器端图形化管理工具,如VisualSVN Server

  VisualSVN Server 是款集Subversion服务器端、Apache服务器、管理控制台的简易安装包,是目前为止最为简便的一款SVN管理工具。通过友好的管理控制台界面,可以实现创建、导入和删除版本库,配置SVN的安全策略,编辑Subversion钩子等功能。

  但是,如果想对SVN进行深入的话,建议自己装一遍Apache+SVN+TortoiseSVN的配置方案,能很好的理解SVN原理。

  本文将会对两种安装方法进行一个简要阐述,四、五、十部分VisualSVN Server+邮件通知的配置方案,而扣除第五部分后则是Apache+svn+TortoiseSVN+邮件通知的解决方案。


二、所需的安装软件


说明:在完成本文时,有些软件已经进行了版本更新。请自己注意更新。

  

1 基本的安装包

Apacheapache_2.2.11-win32-x86-no_ssl.msi 

TortoiseSVNTortoiseSVN-1.5.7.15182-win32-svn-1.5.5.msi

 TortoiseSVN中文语言包: LanguagePack_1.5.7.15182-win32-zh_CN.msi 

● VisualSVN Server :
VisualSVN-Server-1.6.3.msi 

   


其他辅助安装包 


  ●Mod_auth_sspi 1.0.4: mod_auth_sspi-1.0.4-2.2.3-w32.zip

  http://www.gknw.net/development/apache/httpd-2.2/win32/modules/

  ●Active Perl: ActivePerl-5.10.0.1004-MSWin32-x86-287188.msi 

  ●Nmake:nmake15

   

  ●Module::Build: Module-Build-0.31.tar.gz

   

  ●Authen::SASL: Authen-SASL-2.10.tar.gz

   

  ●Net::SMTP_auth: Net-SMTP_auth-0.08.tar.gz

   

  ●SVN-Notify:SVN-Notify-2.78 

  

  ●Apache22Passwd

  

  ●Python2.5:python-2.5.2

  

三、安装和建立Subversion服务器


安装Apache服务器

 

  Apache官方网站下载Windows的版本,安装的时候,最好选择对针对所有用户并且开放80端口。如果有端口冲突,可以到Apache的安装目录下conf中找到httpd.conf,并且修改Listen 80 为自己所需要的端口。为了方便描述,假设Apache的安装目录为,一般目录是(C:\Program Files\Apache Software Foundation\Apache2.2)。安装后,在浏览器中访问查看是否安装成功。


安装SVN服务器


a) SVN官方网站上下载针对Windows平台的安装包,本次安装选择msi安装文件,最新的msi版本是1.5.3。下载后,一路Next即可。如果下载别的安装包,还需设置环境变量。 安装完成后,在cmd控制台,输入svn help 即可检验是否安装成功。同样,为方便描述,假设SVN安装目录为

b) /bin/目录下的mod_dav_svn.so 和 mod_authz_svn.so复制到/modules/目录下。

c) /bin/目录下的libdb44.dlllibeay32.dllssleay32.dll复制到/bin/目录或者/modules

d) 编辑/conf/http.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

  重启Apache HTTP Server 

 安装TortoiseSVN客户端

=======

TortoiseSVN官方网站下载与SVN服务器对应版本的安装包,同时下载相应的中文语言包,一路Next即可。安装中文语言包后,打开Setting选项,在Language下选择简体中文,确定即可。

 VisualSVN Server 

a) 安装

VisualSVN Server的官网上下载最新的安装包,在安装过程中配置版本库和服务器名称及访问字段等。

b) 配置VisualSVN Server的访问属性

可以设置版本库的存放地址,网络访问属性和证书以及权限管理方式。

c) 创建版本库

  

d) 权限管理

VisualSVN的权限管理也有两种方式,一个是SVN内置的授权和标准的windows系统授权。如果是用SVN内置的授权管理,还需要自己建立用户和用户组。

e) 配置钩子

如果需要配置自动邮件通知,可以利用SVN的“钩子”功能来实现,当然,前提是得配置好一些相关环境,如PerlSVNnotify等。

f) 配置WEB访问外观

因为VisualSVN Server是基于Apache的,所以,可以自己修改访问外观。在VisualSVN Server的安装目录下,找到conf目录下的httpd.conf文件。修改如下

  DAV svn

  SVNListParentPath on

  SVNParentPath "F:/SVN"

  SVNIndexXSLT "/svnindex.xsl"

  SVNPathAuthz short_circuit

  AuthName "Subversion Repositories"

  AuthType Basic

  AuthBasicProvider file

  AuthUserFile "F:/SVN/htpasswd"

  AuthzSVNAccessFile "F:/SVN/authz"

  require valid-user

SVNIndexXSLT "/svnindex.xsl" 就是配置外观的文件。在VisualSVN Server 安装目录下htdocs文件夹中,添加svnidex.xsl和其他相关美化文件,如css和图片等。

其他文章:

======================================================================


六 创建版本库

创建版本库有两种方式,一个是用命令行创建,一个是用TortoiseSVN创建。假设所有版本库都放在D:\SVN目录下,要创建一个repository的版本库,指令为:


Cd   D:\SVN

Svnadmin create D:\svn\repository


如果用Tortoise,只需建立D:\SVN\repository文件夹,然后右键TortoiseSVN:create repository here.

七 设定访问版本库的URL路径

建立版本库后,还需要配置它的访问方式,在Apache的支持下,可以用URL直接访问到已经建立的版本库。对应方式有两种,分别是SVNPath SVNParentPath。配置访问方式需要编辑\conf\httpd.conf文件

1 SVNPath


SVNPath 适合用来个别指定版本库的路径,语法是:

 

 /svn/repos_name>

 DAV svn

 SVNPath /absolute/path/to/repository 

其中“/svn/repos_name”就是用户端存取特定版本库的URLSVNPath 后面指定的路径则是文件库的绝对路径,假设我们的文件库实际存放的路径是 d:/svn/MyRepository,并且希望用户端使用 ""  URL 来存取文件库,那么要加入 httpd.conf 的內容就是:

 /svn/myrepos>

 DAV svn

 SVNPath d:/svn/MyRepository

 

注意 Location 标签后面的 /svn/myrepos 的第一个斜线不可少!

2 SVNParentPath

如果你的文件库都集中放在某个目录之下,例如:d:/svn,那你就可以使用 SVNParentPath 的方式指定文件库的根路径,语法是:

 

DAV svn 

SVNParentPath /absolute/path/to/repository 

 其中的 SVNParentPath 后面指定的路径是文件库的绝对路径,假设我们的文件库实际存放的路径是 d:/svn,那么要加入 httpd.conf 的内容就是:

 

 DAV svn

 SVNParentPath d:/svn

 

这表示可以让任何人都可以透过 文件库名称的方式,存取位于 d:/svn 这个目录以下的所有文件库。也就是说,这个设定动作只需要一次,如果使用 SVNPath,那么你必须为各个文件库分别指定对应的路径。

为方便起见,我们这里用 SVNParentPath 来统一指定所有文件库的父层 URL 路径。将上述的设定加到 Apache HTTP Server  httpd.conf 文件尾部就行了。 接下来就可以在 d:/svn 底下建立文件库了。

至此,SVN安装已经基本完成,在浏览器中输入访问地址后,可以看到已经搭建好的SubVersion平台。

八 配置WEB访问外观

SVN中,提供了自定义Web界面的功能。编辑\conf\httpd.conf。在模块中加入如下语句。

  …

SVNIndexXSLT "/svnindex.xsl"

  …

Svnindex.xsl文件放在\htdoc目录下,可以针对svnindex.xslcss文件来对界面进行美化。可以到Tortoise下载了一个预定义的美化包。

阅读(6259) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~