Subversion、BugFree安装指南
Apache、PHP、MySQL、Subversion、BugFree的服务配置可以称得上复杂,在几经摸索获得成功后,作文以记之。
1 服务器安装
如果你很熟悉Apache、PHP、MySQL的配置,那么很幸运,服务器的配置对你来说绝不是什么难事。如果你不熟悉它们,那么我推荐你用已有的第三方套件来组织服务程序。
现有的服务器套件有很多种,在使用了几组套件后,决定采用WAMP服务器套件。
1.1 下载WAMP
官方网站: http://www.wampserver.com/
1.2 安装
WAMP的安装很简单,按照提示下一步即可。
Apache的http默认端口为80,如果你的IIS服务所占端口也为80的话,将引起冲突。你可以安装WAMP之前把IIS关掉,或者将IIS的WEB服务另改一个端口。
在安装过程中,安装程序将提示用户选择www的根目录。可以直接将此指向当前机器的BugFree的目录,如:d:/BugFree
安装完毕后,应该可以在系统托盘中看到WAMP的图标,可以由此进入相关服务的管理程序。
2 Subversion
2.1 下载Subversion
官方网站: http://subversion.tigris.org/
2.2 安装
2.3 创建代码库
进行命令行窗口,输入命令:svnadmin create d:/svn(请输入你要创建的代码库目录)
配置用户和权限:
来到d:/svn/conf目录,修改svnserve.conf:
# [general]
# password-db = passwd
改为:
[general]
password-db = passwd
然后修改同目录的passwd文件,去掉下面三行的注释:
# [users]
# harry = harryssecret
# sally = sallyssecret
最后变成:
[users]
harry = harryssecret
sally = sallyssecret
此处为系统默认的两个用户,你大可改为你自己的帐户。
很明显,格式为:<用户名> = <密码>
2.4 启动Subversion服务
方式有两种(windows上推荐第二种方法):
2.4.1 使用Subversion命令行
1) 进入命令行,来到Subversion安装目录的bin目录下(如:D:/Program Files/Subversion/bin/)
2) 输入命令:svnserve -d -r d:/svn(请指向你的代码库目录)
2.4.2 安装服务
Windows系统下也可直接安装服务来启动Subversion:
1) 官方网站: http://clanlib.org/~mbn/svnservice/
2) 将SVNService.exe拷贝到Subversion安装目录的bin目录下(如:D:/Program Files/Subversion/bin/)
3) 来到相应目录,输入命令:svnservice -install -d -r d:/svn(请指向你的代码库目录)。
4) 如果安装成功,应该会在系统服务列表中看到SVNService:
5) 改变服务的启动类型为“自动”,并启动服务:
6) 至此服务安装完成
2.5 配置Subversion的网络服务
Subversion使用Apache2.0来作为http前端。
安装步骤如下:
1) 来到Apache的安装目录下的bin目录,在Subversion安装目录下的/bin (c:/Program Files/Subversion/bin),找到文件: mod_dav_svn.so,mod_authz_svn.so和libdb43.dll,把他们复制到Apache 功能模块目录下(c:/wamp/Apache2/modules).
2) 编辑Apache的配置文件(Apache2/conf/httpd.conf)
去掉下面两行的"#"
#LoadModule dav_fs_module modules/mod_dav_fs.so
#LoadModule dav_module modules/mod_dav.so
在LoadModule section增加下面两行
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
添加svn版本库管理:
<Location /svn>
DAV svn
SVNParentPath d:/svn (请指向你的代码库目录)
</Location>
3) 重起Apache
2.6 客户端的使用
你即可以完全使用命令行方式来使用Subversion,也可使用第三方工具来作为Subversion的客户端工具,TortoiserSVN官方网站: http://tortoisesvn.tigris.org/
详细的使用方法在Subversion、TortoiserSVN的帮助文档里已有描述。
2.7 如何配置Subversion自动发送邮件
Subversion是通过Hooks 来控制每次Transaction的行为, 有Pre-Commit, Post-Commit 等.
一般情况下我们希望在提交代码后,Subversion可以自动发送邮件给组里的每个成员, 这种情况下我们可以通过post-commit这个脚本来完成.
这些脚本存放在你的Repository的Hooks目录下, 一般情况下, 是以.template后缀结尾, 如果是Unix平台, 需要改成.sh, Windows 平台改成.bat就可以.
当一个Transaction成功完成后, 就会调用post-commit.bat 这个脚本.
下面的例子给出了, 如何在Subversion提交代码后自动发送邮件的例子.
set REPOS=%1
set REV=%2
commit-email-win.pl %REPOS% %REV% -l C:Tempsvnlookcommit-email.log --from your-email@server.com -s "[project-dev] Commit"
commit-email-win.pl 是用来发送邮件的Perl 脚本, 所以你的系统需要安装Perl.
%REPOS% 参数是你的Repository的目录
%REV% 参数是Commit的Revision号
--from 表面邮件发送人的地址
-l 参数是日志的目录, 用来记录每次邮件发送的细节
-s 参数是邮件的标题
下面给出commit-email-win.pl, 您可以将他放在svn/bin 目录下, 并保证svn/bin在系统的PATH环境变量里面.
请根据你的系统配置, 正确改写下面几处变量:
$sendmail
$svnlook
$emailsFile # 每行一个邮件地址
$tmp_dir
$mailserver # SMTP的域名或者IP
找到$mailer->auth , 正确填写你的邮件地址的帐号, 和密码 (SMTP 验证用), 并保证你的Perl 已经安装Authen::SASL
commit-email-win.pl
至此 就算大功告成, 你可以直接运行commit-email-win.pl 脚本, 来检查脚本是否正常运行, 此时mailerDebugLevel可以设置为1.
> commit-email-win.pl d:/svn_repository 2
如果运行成功, 你就可以通过Commit再次检查运行是否正常
3 BugFree
3.1 下载BugFree
官方网站: http://bugfree.1zsoft.com/
3.2 安装
1) 解压缩BugFree到任意目录。如:D:/BugFree/
2) 在安装WAMP时,将http根目录指向此目录即可。
3) 修改D:/BugFree/Include/SetupBug.inc.php文件:
找到这行:
//$BugConfig["ScriptDir"] = "Your path to BugFree";
去掉“//”,并改为自己的BugFree目录。如:
$BugConfig["ScriptDir"] = "d:/BugFree";
4) 访问BugFree的安装页面:http://localhost/install.php
5) 填定各项参数。
注意如果mysql中尚无bugfree数据库,请在此页面中选中 ,如此则会自动创建BugFree数据库及相关表。
6) 填写完毕后,点击按钮:
将生成的ConfigBug.inc.php覆盖D:/BugFree/Include/SetupBug.inc.php
7) 将d:/BugFree下的两个文件改名:install.php和upgrade.php。任意名称都可。
8) 至此BugFree安装完毕。可以使用admin:123456访问http://localhost/Login.php以验证。
3.3 BugFree的邮件服务配置
1) 打开Apache的php配置文件。如:c:/wamp/Apache2/bin/php.ini
2) 找到[mail function]一节,修改以下两项配置:
SMTP = 你的邮件服务器地址(如:mailsvr, smtp.163.com)
Sendmail_from = bugfree的自动邮件地址(如:sun@geostar.com.cn)
3) 保存配置,邮件配置成功。