Настройка связки TortoiseSVN + Mantis на Windows XP
Статья в стадии корректировки
На момент написания статьи используются:
TortoiseSVN 1.6.12
Mantis 1.2.3
Введение:
Mantis – популярный BugTracker, т.е. система фиксации о ведения ошибок (багов).
SVN – система контроля версий, т.е.
Предполагается что у вас уже настроены SVN, Mantis и вы умеете с ними работать (если нет – предлагаю предварительно познакомиться с указанными во Введении статьями).
В связи с тем что вся связка состоит из 3-х элементов (SVN-сервера, SVN-клиента и Mantis) необходимо будет настроить эти элементы в 3 шага:
1. В Мантис создать нового пользователя от имени которого будут добавляться к определённому Инциденту информация о новой ревизии проекта.
2. Настроить SVN-клиент, а именно в Тортилке указать, что ещё нужно передать SVN-серверу помимо информации о ревизии.
3. Настроить SVN-сервер. А именно в настройках репозитория задать …., а так же создать скрипт, который будет выполняться после каждого коммита, и передать необходимую информацию в Мантисс для добавления.
для рабочей копии проекта задать свойства при помощи которых система определит как при Коммите можно связаться с Мантис и передать ей нужную информацию
Шаг 1. Настройка Mantis
В мантисс создадим нового пользователя с именем «svn».
Затем назначаем пользователя на нужный проект.
При этом пользователь должен иметь права на добаление комментариев.
$g_source_control_notes_view_status = VS_PUBLIC;
$g_source_control_account = 'svn';
$g_source_control_set_status_to = OFF;
$g_source_control_regexp = "/\bissue [#]{0,1}(\d+)\b/i";
Шаг 2. Настройка TortoiseSVN
http://mige.blogspot.com/2006/11/integrating-mantis-bug-tracking-with.html
bugtraq:label = issue
bugtraq:url = http:///mantis/view.php?id=%BUGID%
bugtraq:message = issue %BUGID%
bugtraq:warnifnoissue = true
Шаг 3. Настройка репозитория (SVN-сервера)
В SVN реализуется механизм хуков, т.е. скриптов, которые выполняются в определенные моменты взаимосвязи svn-клиента и svn-сервера, например момент до начала операции commit, начало commit, момент после выполнения commit и т.д.
Соответственно для таких моментов существуют хуки pre-commit, start-commit и post-commit.
Открыв директорию путь_до_репозитория\ваш_проект\hooks вы можете увидеть шаблоны для соответствующих хуков.
Нас интересует хук post-commit.tmpl. При помощи этого хука после осуществления операции commit будет осуществляться передача информации в Mantis.
Для того чтобы хук стал активным копируем файл post-commit.tmpl в ту же директорию с расширением .bat вместо .tmpl
Затем открываем наш post-commit.bat в текстовом редакторе, стираем всё что там есть ибо там шаблон скрипта для линуксоидов, и вставляем следующий скрипт:
REM Post-commit hook for MantisBT integration
SET REPOS=%1
SET REV=%2
SET DETAILS_FILE=C:\svnfile_%REV%
echo ****** Source code change ******>>%DETAILS_FILE%
svnlook log -r %REV% %REPOS%>>%DETAILS_FILE%
echo SVN Revision:%REV%>>%DETAILS_FILE%
svnlook diff -r %REV% %REPOS%>>%DETAILS_FILE%
php C:\WebServers\home\mantis\www\scripts\checkin.php <%DETAILS_FILE%
Ещё проверить права на запись в файл.
Ещё нужно удалить лог
P.S.
http://alt-tag.com/blog/archives/2006/11/integrating-mantis-and-subversion/
http://www.ibm.com/developerworks/ru/library/l-SVN_DocBook_Mantis_2/
http://www.ibm.com/developerworks/ru/library/l-SVN_DocBook_Mantis_3/
hi??
да и тебе привет))
Отправить комментарий