Уведомления по электронной почте SVN фиксирует [закрыто]


10

Есть ли у вас какие-либо рекомендации относительно относительно уведомляющей системы регистрации SVN?

Я ищу что-то, что позволяет изменять сводку файлов репозитория и отправлять содержимое фактических различий всем членам команды разработчиков по электронной почте, когда происходят коммиты, возможно, со ссылками на полный затронутый исходный файл на ViewVC или что-то в этом роде. , Это необязательно.

Я определенно хочу, чтобы фактические выдержки из различий / кода были аккуратно разделены. Никто не собирается смотреть на эти вещи (как будто они все равно будут :-), если это просто большой, безрассудный дамп непонятных фрагментов кода с самого начала. В принципе, я просто хочу увидеть номер ревизии, сводку, пользователя, который сделал коммит, и список затронутых файлов репозитория.

Я потратил немного времени на изучение возможности написания своего собственного, и, хотя я вижу, что у SVN есть «крючки» для ловли различных событий именно таким образом, получение чего-то отлаженного, что работает хорошо, кажется довольно сложной задачей. Будучи достаточно уверенным в том, что пакеты с открытым исходным кодом на этот счет существуют, мне было интересно, сможет ли кто-нибудь из вас избавить меня от необходимости выяснять, какие из них хорошие, а какие - плохие. Я ищу что-то довольно простое в настройке и не требующее много времени; Я бы хотел потратить время на изучение всех деталей действительно всеобъемлющей системы, но я также должен заниматься разработкой.

Спасибо всем большое заранее!

РЕДАКТИРОВАТЬ: Я знаю, Sourceforge делает это довольно хорошо. Я в нескольких списках разработчиков, где я постоянно получаю эти сообщения. Но я не могу использовать Sourceforge для проектов, над которыми я работаю.


Подсказка для всех, кто хочет настроить хук следующим образом: это может повредить законам о защите информации (BDSG в Германии). Будьте осторожны, чтобы использовать это!

Ответы:


8

Ваше упоминание о крючках на самом деле не за горами. Вы можете использовать ловушку post commit для запуска commit_email.pl ( содержимое ) , которое поставляется вместе с Subversion, которое даст вам в значительной степени то, что вы ищете. Это нужно тонкая настройка , чтобы указать на ваш почтовый сервер , но это просто переменный в верхней части сценария. Вам также понадобится установить Perl для запуска скрипта.

Хук post commit отличается по имени файла в зависимости от ОС, на которой вы работаете. Вы найдете его в подпапке / hooks / . Для Linux это просто post-commit, а в Windows - post-commit.bat . Все, что вам нужно сделать, это изменить этот файл для запуска commit_email.pl . Ниже приведен пример post-commit.bat:

@echo on
rem POST-COMMIT HOOK

set REPOS=%1
set REV=%2

C:\Perl64\bin\perl S:\SVNRepos\hooks\commit-email.pl %REPOS% %REV% -l C:\Temp\svnlook\commit-email.log

Кроме того, я внес дополнительные изменения в наш сценарий электронной почты, чтобы показать адрес электронной почты, от которого был сделан коммит, вместо имени пользователя Subversion. Это делает электронное письмо более полезным (вы можете ответить на него).


Для дальнейшего использования: в других системах, которые не определяют тип файла по расширению (ну, определенно, по крайней мере, в Linux), ловушка просто названа post-commit. Просто удалите .batрасширение из версии Windows для названия.
Дэвид З,

Дэвид, спасибо за ваши комментарии. Я скорректировал ответ соответственно.
Паук

2

Я использую SVN-Notify , который является Perl-скриптом и должен работать в Windows, хотя я не пробовал его. Он использует HTML :: ColorDiff для предоставления хороших цветных различий после фиксации.

Это было рекомендовано мне коллегой по разработке, и это здорово.




Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.