我主要进行Windows开发。我们使用 Mantis Subversion 用于我们的开发,但它们没有集成在一起,实际上它们位于不同的服务器上。

我做了一些关于将两者整合在一起的谷歌搜索并遇到了这篇文章。它看起来很有趣。

我想知道是否有人这样做或已经完成了这个以及你的经历是什么。如果你有不同的解决方案,我也有兴趣了解它!

谢谢!

有帮助吗?

解决方案

我们已经使用scmbug将SVN链接到Bugzilla很长一段时间了。工作得很好,直到我们最近升级到Bugzilla 3.2,这打破了整合。 scmbug团队需要一段时间才能赶上SCM工具的新版本,这是可以理解的。

其他提示

我使用Mantis和SVN。就像那个链接所说的那样,虽然我把regexp放在post-commit中,所以如果提交消息不相关,它不会尝试更新bug,这使得非bug更新提交的响应速度稍快。

我的Mantis安装也在不同的服务器上。我使用 curl 在Mantis 1.1.6中调用php 方法。

将它放在post-commit.cmd钩子中(你需要下载 strawberry 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

并将其放入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;

如果你想从VSS迁移,有很多脚本,包括我在上写的脚本。的CodePlex

这一切都运作良好,我们一直使用它,并且它足够快,不会注意到那里。只需输入“Fixed Mantis#1234”即可。它解决了这个bug并为它添加了一个bugnote。该脚本还添加了修改为bugnote的目录(我尝试显示已更改的文件,但太多有助于理解)

以下是我们使用的 Subversion后提交脚本。它使用PHP运行Mantis checkin PHP脚本,如原帖子中的这个链接

我遇到了 scmbug 。看起来它会把像Mantis这样的东西连接到像Subversion这样的东西。

我们按照您链接中的步骤进行操作 - 唯一的区别是在Windows上您有post-commit.bat。如果您向下滚动某人发布样本。我们对其进行了修改,以便记录更改的文件以及更改后的文件 - 这对批处理文件来说非常容易。我们尝试在某一点上包含差异 - 但很明显,由于某些签到的大小,这样做很难。

它工作得非常好,我真的很开心 - 现在我必须将所有Sourcesafe的东西移到...

我个人使用VisualSVN Server和公共Mantis bug跟踪器在我的本地开发环境中使用私有SVN存储库。我不得不稍微更改checkin.php文件以处理来自Web服务器的调用(在此网页的帮助下: http://www.mantisbt.org/bugs/view.php?id=8847

我已经制作了一个简短的C#控制台应用程序来处理这个而不是批处理文件,因此它更易于配置并支持远程或本地checkin.php文件。

如果您感兴趣,我已在我的博客上发布了一篇关于此内容的文章: http://mp4m.org/blog/svn-and-mantis-bug-tracker-integration/

希望有所帮助!

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top