Trac + SVN: почему не работает фиксация после коммита?
Я хочу использовать стандартный Trac post-commit-hook для SVN.
Я использую Trac 0.11.4 и скачал этот хук с их сайта. Я положил это в /usr/local/bin/
а также chmod +x
'редактировать. post-commit
зацепить /var/svn/myrepo/hooks/
выглядит так же, как советует Trac Guide:
#!/bin/sh
REPOS="$1"
REV="$2"
TRAC_ENV="/var/trac/mytracenv"
/usr/bin/python /usr/local/bin/trac-post-commit-hook -p "$TRAC_ENV" -r "$REV"
Каталог среды Trac /var/trac/mytracenv
доступно для записи пользователям Subversion. Я работаю автономно svnserve
нет апача.
Если я бегу/usr/bin/python /usr/local/bin/trac-post-commit-hook -p /var/trac/mytracenv -r <somerev>
вручную, как пользователь Subversion, работает как надо. Однако, если я делаю коммит (используя TortoiseSVN), он говорит:
Error post-commit hook failed (exit code 255) with no output.
В чем проблема?
3 ответа
Я предполагаю, что проблема связана с разрешением. Убедитесь, что оба post-commit
сценарий и rac-post-commit-hook
иметь надлежащие привилегии. Если это работает для вас с помощью командной строки, попробуйте сделать это как пользователь, который запускает демон svn (sudo -u svnuser [cmd]
).
Я мог бы решить аналогичную проблему год назад, добавив в оба сценария "chmod o+x".
Дважды проверьте переменные среды; одна из самых распространенных причин не имеет $PATH
вы ожидаете.