развертывание веб-сайта / веб-приложения через ошибку разрешений git / gitolite
Я установил сервер разработки / тестирования, где разработчики могут отправлять репозитории на удаленный репозиторий / веб-сервер через gitolite / git. На сайте репозитория все работает хорошо, и разработчики могут использовать сервер, однако:
Проблема:
Я хочу развернуть код в корне документа apache (chown'd apache: apcahe и chmod'd 755).Я следую этим инструкциям и когда редактировать мой пост-получить крючок, как описать так:
#!/bin/sh
echo "deploying to DocumentRoot"
GIT_WORK_TREE=/var/www/www.example.com git checkout -f
однако теперь, когда я запускаю git push из моего локального репозитория, я получаю ошибки прав доступа, такие как:
error: git checkout-index: unable to create file .gitignore (Permission denied)
error: git checkout-index: unable to create file .htaccess (Permission denied)
И мой корень документа пуст ... Хук post-receive работает как пользователь 'gitolite' (не уверен, важно ли это).
gitolite уже есть в списке sudoers, поэтому я хочу запустить что-то вроде:
GIT_WORK_TREE=/var/www/www.example.com sudo git checkout -f
но это тоже не работает, я хочу избежатьвызов отдельного сценария оболочки если возможно.
Любые идеи будут по достоинству оценены.