Problem with Email Notifications in VisualSVN Server

emailhookvisualsvn-server

I have a dedicated server running windows 2003 server and Visual SVN Server 2.0.8.

I'm trying to configure it to send email notifications on commit. So I found this article on Visual SVN site.

It says I have to edit the Post-commit hook and set it to the following:

"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
commit-notification "%1" -r %2 ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server>

Of course I've replaced the variables there.

The problem is when someone commits something, the svn client throws the following error:

post-commit hook failed (exit code 1) with no output.
VisualSVNServerHooks: Error resolving case of '<path-to-repository>'

The commit process runs with no problems, I mean it does commit the files. But it won't send any email notification. If I remove the post-commit hook, then I don't get the error (and of course I don't get any notification).

Manually running the VisualSVNServerHook.exe using cmd.exe with the following code works fine (sends the email).

"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" commit-notification ^
<path-to-repository> -r <some-revision_number> ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server>

Could you help me out with it? The error doesn't tell too much =S

Thank you!

EDIT:
Ok… so I've tried replacing %1 and %2 with static values (using the actual repository path and some existing revision number), just as I tested using cmd.exe. But it didn't work.
So I went further and I replaced the entire hook with a simple call to C:\hook.bat, same error.
It seems no matter what I put on the hook, it won't work.

Best Answer

I have had problems with case sensitivity and subversion on windows before. Could that be the problem?

I would try this:

 echo "%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
commit-notification "%1" -r %2 ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server> > <somepath>\text.txt

Check that the command echoed in text.txt works.

Related Topic