Subversion - изменение способа обработки крючков
Мой хостинг-провайдер включил Trusted Path Execution (Grsec), поэтому все мои перехватчики subversion (например, post-commit) перестали работать. Любая попытка что-то совершить заканчивается предупреждением:
Ошибка после фиксации (код выхода 255) без вывода.
Я проверил, что скрипты можно запускать вручную, используя следующий синтаксис:
bash post-commit [PATH] [REV]
но не
./post-commit [PATH] [REV]
Я думаю, что Subversion использует последний, который вызывает проблему. Таким образом, возможно ли изменить способ, которым обрабатывает subversion?
1 ответ
Метод выполнения хуков жестко запрограммирован в Subversion, и вы должны исправить исходный код и пересобрать его, если хотите это изменить. Соответствующий код можно найти в subversion / libsvn_repos / repos. {C,h} в исходном дистрибутиве.
Кстати, хуки в настоящее время выполняются по их полному пути (как в /path/to/your/repo/hooks/post-commit
) а не с cd /path/to/your/repo && ./post-commit
,