У меня есть выделенный сервер под управлением Windows 2003 Server и Визуальный SVN-сервер 2.0.8.
Я пытаюсь настроить его для отправки уведомлений по электронной почте о фиксации. Итак, я нашел Эта статья на сайте Visual SVN.
В нем говорится, что я должен отредактировать хук Post-commit и установить для него следующее:
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
commit-notification "%1" -r %2 ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server>
Конечно, я заменил там переменные.
Проблема в том, что когда кто-то что-то фиксирует, клиент svn выдает следующую ошибку:
post-commit hook failed (exit code 1) with no output.
VisualSVNServerHooks: Error resolving case of '<path-to-repository>'
Процесс фиксации выполняется без проблем, я имею в виду, что он фиксирует файлы. Но он не будет отправлять уведомления по электронной почте. Если я удалю ловушку после фиксации, я не получу сообщение об ошибке (и, конечно же, я не получу никакого уведомления).
Запуск VisualSVNServerHook.exe вручную с помощью cmd.exe со следующим кодом работает нормально (отправляет электронное письмо).
"%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" commit-notification ^
<path-to-repository> -r <some-revision_number> ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server>
Не могли бы вы мне с этим помочь? Ошибка не говорит слишком много = S
Спасибо!
РЕДАКТИРОВАТЬ: Хорошо ... поэтому я попытался заменить% 1 и% 2 статическими значениями (используя фактический путь к репозиторию и некоторый существующий номер версии), как я тестировал с помощью cmd.exe. Но это не сработало. Итак, я пошел дальше и заменил весь хук простым вызовом C: \ hook.bat, та же ошибка. Кажется, что бы я ни поставил на крючок, это не сработает.
Раньше у меня были проблемы с чувствительностью к регистру и подрывной деятельностью в Windows. Может ли это быть проблема?
Я бы попробовал это:
echo "%VISUALSVN_SERVER%\bin\VisualSVNServerHooks.exe" ^
commit-notification "%1" -r %2 ^
--from <from-email> --to <to-email> ^
--smtp-server <smtp-server> > <somepath>\text.txt
Убедитесь, что команда, отображаемая в text.txt, работает.
Эта проблема исправлена в VisualSVN Server 2.1.3:
Исправлено: VisualSVNServerHooks.exe не работает, если учетная запись службы VisualSVN Server не имеет прав доступа ко всем родительским папкам репозиториев.
Видеть изменение записи журнала для VisualSVN Server 2.1.3 Больше подробностей.
Попробуйте запустить VisualSVNServerHooks.exe из командной строки с вашими параметрами. Он отобразит сообщение об ошибке, которое может вам помочь.
Я хотел бы проверить, что вы не используете фальшивый адрес и что он существует на вашем почтовом сервере.