views:

354

answers:

1

Howdy,

I've got VisualSVN running with svnnotify sending notification email via post-commit (the common setup), but I'd like to not send email when certain keywords are included in the commit message, such as "#noemail" or something similar.

Anyone have an example of what I can add to my post-commit hook to look at the commit message and prevent email from being sent if certain keywords exist?

Thanks!


FYI, here's an example of my current post-commit content:

set REPOS=%1
set REV=%2
set EMAILADDRESSES="[email protected]"
set OS=Windows_NT
set PATH=%PATH%;C:\Program Files\VisualSVN Server\bin\;C:\Perl\site\bin;C:\Perl\bin;

svnnotify --repos-path %REPOS% --revision %REV% --to %EMAILADDRESSES% -f [email protected] --smtp smtp.example.com --subject-prefix "SVN - Rev: %%d - "
+2  A: 

Here's the solution, using keyword "nosvnemail":

set REPOS=%1
set REV=%2
set EMAILADDRESSES="[email protected]"
set OS=Windows_NT
set PATH=%PATH%;C:\Program Files\VisualSVN Server\bin\;C:\Perl\site\bin;C:\Perl\bin;

svnlook log -r %2 %1 | FindStr "nosvnemail"

IF %ERRORLEVEL% EQU 0 GOTO SKIPEMAIL

svnnotify --repos-path %REPOS% --revision %REV% --to %EMAILADDRESSES% -f [email protected] --smtp smtp.example.com --subject-prefix "SVN - Rev: %%d - "

:SKIPEMAIL

exit 0
shaunmartin