windows上安装apache2.0.59+SVN+自动邮件通知

OS: Windows XP SP2
1) 安装Apache Server
2) 安装SVN
3) 配置邮件通知

1. 安装apache2.0.59,从这里可以下载到 http://apache.justdn.org/httpd/b ... in32-x86-no_ ssl.msi
安装过程中设置以下参数:
Network Domain: localhost
Server name: localhost
Administrator's Emai Address: [email protected]
安装到默认路径为C:/Program Files/Apache Group/Apache2

2. 安装subversion1.4.0,从这里下载 http://www.iuse svn.com/bbs/download/ svn-win32-1.4.0.zip
安装到默认路径为C:/Program Files/Subversion
默认安装后,在apache的配置 文件中会自动加入以下两行。
LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so"
把这行的注释去掉
LoadModule dav_fs_module modules/mod_dav_fs.so

注:
安装zip版的subversion中,由于只是解压到某目录下,故解完后在apache的配置文件中自动添加文中的两行,另外还需加上Subversion的系统环境变量,如何设置,请参考下文Perl的环境变量配置。
但当安装“exe”版本subversion时,可自动添加,并成功安装。

拷贝C:/Program Files/Subversion/bin下的libdb44.dll到这个目录下C:/Program Files/Apache Group/Apache2/bin
打开apache的配置文件在末尾处加入以下参数:
<Location /svn>
DAV svn
SVNPath d:/svndata/test
AuthType Basic
AuthName "Windy SVN"
AuthUserFile d:/svndata/test/passwd
Require valid-user
</Location>
保存。(在这里 权限文件我不多讲了,大家多做实验就明白了)

建立仓库
打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
C:/Documents and Settings/windy> d:   //进入D盘(因为我们要在D盘下创建仓库)
D:/> md svndata   //创建一个名叫svndata的目录
D:/> c:   //进入C盘
C:/Documents and Settings/windy> cd/   //退到C盘根目录
C:/Documents and Settings/windy> cd C:/Program Files/Subversion/bin  //进入subversion/bin目录
C:/Program Files/Subversion/bin> svnadmin create d:/svndata/test   //用svnadmin命令创建名为test的仓库(这条命令成功后,在test下会出现很多文件夹和文件)
C:/Program Files/Subversion/bin> cd C:/Program Files/Apache Group/Apache2/bin   //进入apache/bin目录
C:/Program Files/Apache Group/Apache2/bin> htpasswd -cm d:/svndata/test/passwd user1   //用htpasswd命令创建第一个用户(user1),同时生成密码认证文件,c参数为create,m参数为MD5加密方式
New password: ******
Re-type new password: ******
Adding password for user user1   //加入用户成功
C:/Program Files/Apache Group/Apache2/bin> htpasswd -m d:/svndata/test/passwd user2   //用htpasswd命令创建第二个用户(user2),注意如果在这时加入c参数会覆盖掉之前创建的用户及文件。
New password: ******
Re-type new password: ******
Adding password for user user2   //加入用户成功

重新启动apache,进行测试。
用IE打开 http://localhost/svn,这时应该可以看到
Revision 0: /
--------------------------------------------------------------------------------
Powered by Subversion version 1.4.0 (r21228).    //说明我们已经配置成功了

3. 配置邮件通知
下载所需要的软件包
--在这里下载 http://downloads.activestate.com ... in32-x86-267479.msi到D盘根目录下。
--下载 http://download.microsoft.com/do ... 5/en-us/nmake15.exe到D盘根目录下。
--下载 http://search.cpan.org/CPAN/auth ... Build-0.2805.tar.gz到D盘根目录下,将Module-Build-0.2805.tar.gz解压到D盘。
--下载 http://search.cpan.org/CPAN/auth ... en-SASL-2.10.tar.gz到D盘根目录下,将Authen-SASL-2.10.tar.gz解压到D盘。
--下载 http://search.cpan.org/CPAN/auth ... TP_auth-0.08.tar.gz到D盘根目录下,将Net-SMTP_auth-0.08.tar.gz解压到D盘。
--下载 http://search.cpan.org/CPAN/auth ... -Notify-2.64.tar.gz到D盘根目录下,将SVN-Notify-2.64.tar.gz解压到D盘。

开始安装Perl以及模块
--安装Active Perl,一路默认安装,默认路径为C:/Perl
--测试perl是否正常工作(这步很关键)
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
   C:/Documents and Settings/windy> perl   //如果没有报错,说明已经正常工作,因为安装perl时,安装程序会自动设置好环境perl(如果在系统环境变量中没有自动添加,需手动添加perl变量环境),具体做法是:
  "回到桌面" -> "鼠标右键我的电脑" -> "属性" -> "高级" -> "环境变量" -> "系统变量中Path最前面中添加C:/Perl/bin/;" ->"完成"。   //测试,如果报错,请重新启动电脑后进行测试。
--将nmake15.exe改名为nmake.exe后拷贝到c:/windows/system32目录下。
--测试nmake是否是否正常工作(这步很关键)
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
   C:/Documents and Settings/windy> nmake   
  Microsoft (R) Program Maintenance Utility   Version 1.50
  Copyright (c) Microsoft Corp 1988-94. All rights reserved.   //说明nmake已经正常工作
--安装Module-Build模块
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
  C:/Documents and Settings/windy> d:
  D:/> cd Module-Build-0.2805
  D:/Module-Build-0.2805> perl Build.PL   //收集系统环境变量
  D:/Module-Build-0.2805> Build   //进行编译
  D:/Module-Build-0.2805> Build test   //测试
  D:/Module-Build-0.2805> Build install   //编译后安装  
--安装Perl模块Authen::SASL,进入Authen-SASL-2.10目录,首先开打Makefile.PL
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
  C:/Documents and Settings/windy> d:
  D:/> cd Authen-SASL-2.10
  D:/Authen-SASL-2.10> perl Makefile.PL   //收集系统环境变量
  出现选择安装提示,y和n先后安装一次
  D:/Authen-SASL-2.10> nmake   //进行编译
  D:/Authen-SASL-2.10> nmake test  //进行测试
  D:/Authen-SASL-2.10> nmake install   //编译后安装
--安装Perl模块Net::SMTP_auth
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
  C:/Documents and Settings/windy> d:
  D:/> cd Net-SMTP_auth-0.08
  D:/Net-SMTP_auth-0.08> perl Makefile.PL   //收集系统环境变量
  D:/Net-SMTP_auth-0.08> nmake   //进行编译
  D:/Net-SMTP_auth-0.08> nmake test   //测试
  D:/Net-SMTP_auth-0.08> nmake install   //编译后安装
--安装Perl模块SVN::Notify
  打开CMD命令行界面,"开始" -> "运行" -> "cmd" -> "回车"
  C:/Documents and Settings/windy> d:
  D:/> cd SVN-Notify-2.64
  D:/SVN-Notify-2.64> perl Build.PL   //收集系统环境变量
  D:/SVN-Notify-2.64> Build   //进行编译
  D:/SVN-Notify-2.64> Build test   //测试
  D:/SVN-Notify-2.64> Build installl   //编译后安装  
--安装完毕。

设置邮件通知
--拷贝post-commit.tmpl为post-commit.bat
-- 删除末尾参数,增加下面参数:
set REPOS=%1
set REV=%2
SET PATH=C:/PERL/BIN;
SET OS=Windows_NT
SET SystemRoot=C:/WINDOWS
svnnotify --repos-path %REPOS% -r %REV% --to [email protected] --smtp smtp.xxx.com -H HTML::ColorDiff -d --subject-prefix [Windy SVN]
//--to [email protected]为要通知的邮件地址,我们一般会做个邮件组,这个组内包含了这个项目的所有人,--smtp mail.xxx.com为你的内部邮件 服务器地址,必须使用域名,要内部DNS能够解析到,可能需要在内部DNS 服务器上手动添加主机记录,[Windy SVN]必须有SVN字段,否则将收不到邮件,注重格式,此脚本有bugzilla和JIRA系统进行整合的参数。

关于详细参数解释:
svnnotify 邮件通知的命令
--repos-path %REPOS% 后跟仓库的路径
-r %REV% 后跟版本号
--to 后跟邮件地址
--smtp 后跟邮件服务器的地址
--H HTML::ColorDiff 用颜色区分开修改过的代码
--subject-prefix [Windy SVN] 邮件标题前缀,可以把Windy自段定义成自已项目的名称

完成所有设置。

 

你可能感兴趣的:(apache,windows,SVN,cmd,perl,subversion)