我主要做Windows开发.我们使用Mantis和Subversion进行开发,但它们没有集成在一起,实际上它们位于不同的服务器上.
我做了一些关于将两者整合在一起的谷歌搜索,并发现了这篇文章.看起来很有趣.
我想知道是否有人这样做或已经完成了这个以及你的经历是什么.如果你有不同的解决方案,我也有兴趣了解它!
谢谢!
我使用Mantis和SVN.就像那个链接所说的那样,虽然我把regexp放在post-commit中,所以如果提交消息不相关,它不会尝试更新bug,这使得非bug更新提交的响应速度稍快一些.
我的Mantis安装也在不同的服务器上.我使用curl来调用 Mantis 1.1.6中的php方法.
把它放在你的post-commit.cmd钩子里(你需要下载草莓perl并从中获取perl.exe和perl510.dll,你不需要其余的)
c:\tools\perl c:\tools\mantis_urlencode.pl %1 %2 > c:\temp\postcommit_mantis.txt
if %ERRORLEVEL% NEQ 0 exit /b 0
c:\tools\curl -s -d user=svn -d @c:\temp\postcommit_mantis.txt http://swi-sgi-l-web1.ingrnet.com/mantis/core/checkincurl.php
Run Code Online (Sandbox Code Playgroud)
并把它放在mantis_urlencode.pl中
$url = `svnlook log -r $ARGV[1] $ARGV[0]`;
# check the string contains the matching regexp,
# quit if it doesn't so we don't waste time contacting the webserver
# this is the g_source_control_regexp value in mantis.
exit 1 if not $url =~ /\b(?:bug|issue|mantis)\s*[#]{0,1}(\d+)\b/i;
$url = $url . "\n" . `svnlook dirs-changed -r $ARGV[1] $ARGV[0]`;
#urlencode the string
$url =~ s/([^\w\-\.\@])/$1 eq " "?"+": sprintf("%%%2.2x",ord($1))/eg;
print "log=$url";
exit 0;
Run Code Online (Sandbox Code Playgroud)
如果要从VSS迁移,则会有大量脚本,包括我在codeplex上编写的脚本.
这一切都运作良好,我们一直使用它,它足够快,不会注意到它.只需键入"Fixed Mantis#1234"即可解决该问题,并为其添加一个bugnote.该脚本还添加了修改为bugnote的目录(我尝试显示已更改的文件,但太多有助于理解)
我们使用 scmbug 将 SVN 链接到 Bugzilla 已经有一段时间了。工作得很好,直到我们最近升级到 Bugzilla 3.2,这破坏了集成。当 SCM 工具的新版本发布时,scmbug 团队需要一段时间才能跟上,这是可以理解的。
| 归档时间: |
|
| 查看次数: |
6045 次 |
| 最近记录: |