Назад | Перейти на главную страницу

Subversion - изменение способа обработки хуков

Мой хостинг-провайдер включил Trusted Path Execution (Grsec), поэтому все мои перехватчики подрывной деятельности (например, после фиксации) перестали работать. Любая попытка зафиксировать что-либо заканчивается предупреждением:

Ошибка после фиксации (код выхода 255) без вывода.

Я проверил, что скрипты можно запускать вручную, используя следующий синтаксис:

bash после фиксации [ПУТЬ] [REV]

но не по:

./post-commit [ПУТЬ] [REV]

Я думаю, что Subversion использует последний, что и вызывает проблему. Так можно ли изменить способ обработки хуков Subversion?

Метод выполнения хуков жестко запрограммирован в Subversion и вам нужно исправить исходный код и пересобрать его, если вы хотите это изменить. Соответствующий код можно найти в subversion / libsvn_repos / repos. {c, h} в исходном дистрибутиве.

Кстати, хуки в настоящее время выполняются по своему полному пути (как в /path/to/your/repo/hooks/post-commit) а не с cd /path/to/your/repo && ./post-commit.