Распространенные типы крюков Subversion - PullRequest
39 голосов
/ 08 августа 2008

Какие сценарии хуков используются людьми для Subversion? Просто общие идеи, но код тоже был бы великолепен!

Ответы [ 16 ]

0 голосов
/ 02 сентября 2010

Хук предварительной фиксации Windows для проверки того, что в журнале есть что-то.

@ECHO OFF
setlocal

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Get subversion arguments
set repos=%~1
set txn=%2

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Set some variables
set svnlookparam="%repos%" -t %txn%

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Make sure that the new svn:log message contains some text.
set bIsEmpty=true
for /f "tokens=* usebackq" %%g in (`svnlook log %svnlookparam%`) do (
   set bIsEmpty=false
)
if '%bIsEmpty%'=='true' goto ERROR_EMPTY

echo Allowed. >&2

goto :END


:ERROR_EMPTY
echo Empty log messages are not allowed. >&2
goto ERROR_EXIT

:ERROR_EXIT
:: You may require to remove the /b below if your hook is called directly by subversion
exit /b 1

:END
endlocal
0 голосов
/ 05 сентября 2008

У меня есть одна установка с использованием библиотеки Ruby Tinder, которую я отправляю в комнату для разведения костра, если кому-то нужен сценарий, который я могу опубликовать или отправить вам код.

Другие распространенные сообщения, которые я видел, - это сообщения об ошибках и системы уведомлений по электронной почте.

0 голосов
/ 05 сентября 2008

Мы используем скрипт commit hook для запуска нашего релиз-робота. Запись новой информации о выпуске в файл с именем changes.txt в наших различных продуктах приведет к созданию тега и соответствующих артефактов.

0 голосов
/ 26 августа 2008

Мы проверяем следующее с помощью наших скриптов-хуков:

  • что было предоставлено сообщение журнала фиксации
  • Что для фиксации был указан рецензент
  • что в хранилище не появляется автоматически сгенерированный код или запрещенные типы файлов
  • Отправка электронного письма при создании ветки / тега

Мы все еще хотим реализовать следующее:

  • Отправка электронного письма, когда пользователь получает блокировку файла
  • Отправить электронное письмо, когда ваш замок был украден
  • Отправить электронное письмо всем, когда свойство ревизии было изменено
0 голосов
/ 13 августа 2008

Хук, чтобы уведомить систему управления ошибками / проблемами об изменениях в репозитории. То есть. сообщение коммита имеет ошибку: 546 или похожий тег, который анализируется и подается в систему управления ошибками.

0 голосов
/ 08 августа 2008

Самым распространенным, на мой взгляд, является предоставление людям возможности изменять комментарии к редакции после коммитов.

Вам нужно включить скрипт ловушки pre-revprop-change, чтобы разрешить это. Приведенный пример, если включен, позволяет редактировать только свойство комментария и быть только оригинальным комиттером. Отлично подходит для исправления опечаток.

...