Вы интегрировали Mantis и Subversion? - PullRequest
8 голосов
/ 24 сентября 2008

Я занимаюсь в основном разработкой Windows. Мы используем Mantis и Subversion для нашей разработки, но они не интегрированы вместе, фактически они находятся на разных серверах.

Я немного погуглил насчет интеграции двух вместе и наткнулся на этот пост . Выглядело интересно.

Мне было интересно, если кто-то делает это или сделал это, и каков был ваш опыт. Если у вас есть другое решение, мне было бы интересно это знать!

Спасибо!

Ответы [ 6 ]

5 голосов
/ 02 июня 2009

Я использую Mantis с SVN. В значительной степени, как сказано в этой ссылке, хотя я поместил регулярное выражение в post-commit, чтобы оно не пыталось обновить ошибку, если сообщение о фиксации не актуально, что заставляет коммиты без обновления ошибок реагировать немного быстрее.

Моя установка Mantis также находится на другом сервере. Я использую curl to , вызываю метод php в Mantis 1.1.6.

Поместите это в ловушку 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», и это устранит ошибку и добавит к ней ошибку. Сценарий также добавляет каталоги, которые были изменены, к ошибке (я пытался показать измененные файлы, но слишком много отвлекало от простого понимания)

3 голосов
/ 02 января 2011

Вот скрипт Subversion post-commit , который мы используем. Он использует PHP для запуска PHP-скрипта Mantis checkin, как предложено в этой ссылке в исходном сообщении.

3 голосов
/ 12 декабря 2008

Мы использовали scmbug в течение некоторого времени, чтобы связать SVN с Bugzilla. Работали очень хорошо, пока мы недавно не обновились до Bugzilla 3.2, что сломало интеграцию. Команде scmbug понадобится некоторое время, чтобы догнать, когда выйдут новые версии инструментов SCM, что понятно.

1 голос
/ 24 сентября 2008

Я сталкивался scmbug . Похоже, это соединит вещи вроде Mantis с вещами вроде Subversion.

0 голосов
/ 04 января 2012

Я лично использую частный репозиторий SVN в своей локальной среде разработки с использованием VisualSVN Server и общедоступного средства отслеживания ошибок Mantis. Мне пришлось немного изменить файл checkin.php для обработки вызовов с веб-сервера (с помощью этой веб-страницы: http://www.mantisbt.org/bugs/view.php?id=8847)

Я сделал короткое консольное приложение C #, чтобы обрабатывать это вместо командного файла, чтобы он был более настраиваемым и поддерживает удаленные или локальные файлы checkin.php.

Я разместил статью об этом в своем блоге с исходным кодом, если вы заинтересованы: http://mp4m.org/blog/svn-and-mantis-bug-tracker-integration/

Надеюсь, это поможет!

0 голосов
/ 27 мая 2009

Мы следовали инструкциям в вашей ссылке - единственное отличие состоит в том, что в Windows вы используете post-commit.bat. Если вы прокрутите вниз, кто-то публикует образец. Мы изменили это так, чтобы он регистрировал измененные файлы и кто их изменил - довольно легкий взлом командного файла. Мы попытались включить различия в одной точке - но довольно быстро стало очевидно, что это плохая идея из-за размера некоторых чеков.

Это работает очень хорошо, и я действительно счастлив - теперь я должен переместить все наши Sourcesafe вещи через ...

...