В репозитории сервера создан хук post-recieve, который делает checkout ветки master в production-папку.
Нужно, чтобы apache всегда был владельцем файлов в production-папке.
Сейчас хук выполняется от имени пользователя, делающего push, из-за этого он назначается владельцем.
Да, через вебхук (если работаете с репозиторием напрямую через SSH, и вебхуки нет возможности использовать - то дёргаете внутри обычного хука нужный вам URL через wget или curl и получится самодельный вебхук, но без пейлоада)
товарищ, у меня получилось деплоить, но правильно ли я сделал?
1. в корне скрипт publisher.php, которы делает обычный чекаут
2. этот скрипт дергается wget-ом в хуке post-receive
Если работает, то всё норм. Проверьте, чтобы он срабатывал на нужную ветку (не дёргал лишние ветки) и чтобы извне его было невозможно дёрнуть (к примеру, проверять IP-адрес, с которого его вызвали)