Назад | Перейти на главную страницу

Уведомления по электронной почте о коммитах SVN

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

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

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

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

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

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

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

Хук post commit отличается по имени файла в зависимости от ОС, в которой вы работаете. Вы найдете это в / крючки / подпапка. Для Linux это просто после фиксации в то время как в 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 отображать адрес электронной почты, от которого был сделан коммит. Это делает отправленное письмо более полезным (вы действительно можете ответить на него).

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

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

svnmailer это еще один вариант.

SVN монитор это, вероятно, то, что вы хотите.

Вы можете найти еще несколько вариантов на сайте Subversion: CommitMonitor, SVN notifier, SvnReporter (бесстыдный плагин).