Запуск git pull из php-скрипта
Я старалась идеальный рабочий процесс, с Git, GitHub и SSH и у меня все готово, кроме выполнения команды git pull
из php.
когда я запускаю exec('git pull')
Я:
не удалось создать каталог '/.шшш. Ошибка проверки ключа хоста. фатальная ошибка: удаленный конец повесил трубку неожиданно
если я запускаю его в терминале (как root), он работает нормально, но мне нужен этот крюк для работы с URL-адресом после получения (Github).
если я делаю exec('whoami')
Я apache
.
это (dv) от mediatemple с CentOS.
1 ответов
Если вы хотите apache (пользователь) чтобы иметь возможность вытащить из git, вам нужно будет создать ssh-ключ для apache, а затем добавить его к ключам только для чтения на github.
поток что-то вроде этого (настроить для ваших нужд)
usermod -s /bin/bash apache
su apache
cd ~
ssh-keygen # work through the keygen dance (added a dash)
загрузить (Тильда здесь относится к homedir apache)~/.ssh/id_rsa.pub
в github и предоставить apache доступ к любым репозиториям, из которых он должен вытащить.
затем вы можете проверить на сервере снова Су ' ing для apache и запуск git pull
su apache
cd ~/working-copy
git clone my-project
как только это сработает, вы сможете запустить git pull через PHP.