SUPPORT // Configuring Email Notifications in VisualSVN Server

VisualSVN Server includes simple Subversion hook for email notifications.

To enable it email notifications on every commit please do the following:

  1. Start VisualSVN Server Manager
  2. Open Properties for your repository
  3. Select Hooks tab
  4. Edit the Post-commit hook
  5. Enter the following command into the hook editor replacing parameters with valid values.
    "%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
        commit-notification "%1" -r %2 ^
        --from <from-email> --to <to-email> ^
        --smtp-server <smtp-server>
    

There are following options for the commit-notification command:

Option Meaning
-r [--revision] ARG Specifies revision number.
--from ARG Specifies FROM e-mail address for commit notifications. To substitute commit author username in FROM, use $(author) variable.
For example: --from $(author)@example.com
--to ARG Specifies TO e-mail address for commit notifications. To send notifications to multiple recipients, use semicolons to separate destination e-mail addresses and surround the entire list of e-mails with quotes.
For example: --to "devs@example.com;testers@example.com"
--filter ARG Send commit-notification email only when commit affects certain repository path. Use multiple --filter options to specify different repository paths.
For example: --filter "/MyProject/trunk" --filter "/MyProject/branches"
--smtp-server ARG Specifies the SMTP server.
--smtp-port ARG Specifies the SMTP server port. By default port 25 will be used.
--smtp-user ARG Specifies the user name that will be used to connect SMTP server.
--smtp-password <password> Specifies the password that will be used to connect SMTP server.
--smtp-ssl Enables usage of SSL when connecting SMTP server. By default the SSL protocol is disabled.
--no-diffs Do not include the difference of changes in the email.
--no-html Do not use HTML email. HTML email is used by default.
--detailed-subject Include commit author name in email subject.
--encoding <encoding> Specifies encoding that is used to store text files (commit notification e-mails will be sent in UTF-8). For example --encoding ISO-8859-1. Current locale settings will be used by default.

Warning
Warning Email notification ignores access rights set for accounts. It sends all commits to the specified address. You can add your own logic to the hook script if you need to limit commits that should be sent.