Git на окнах через HTTP. крюк после получения не работает
Я настроил msysgit в Windows как сервер через HTTP. Я настроил сервер Apache для пересылки запросов git-http-backened.exe
, Когда я клонировал и пытался нажать на сервер с удаленного ПК, все работало отлично. Но post-receive
крюк не работает.
Я добавил пост-получить
#!/bin/sh
echo "Hook got triggered.." > c:/Repos/logs.txt
Когда я выполняю скрипт вручную, я вижу, как распечатывается журнал.
Но когда я загружаю его из удаленной системы, файлы обновляются. Push работает нормально, но, похоже, хук не вызывается, так как журнал не печатается.
Разрешения для post-receive
являются -rwxr-xr-x
мой post-receive
используется для отправки почты без проблем, когда я настроил git через SSH. После изменения git для работы через HTTP я сталкиваюсь с проблемами. Я понятия не имею, какие дополнительные изменения нужно сделать, чтобы крючок заработал.
1 ответ
xxx.git/.git/hooks
папка.
Это не сработает: если репо является голым репо (как указано в соглашении об именах xxx.git/
папка, оканчивающаяся на .git
), то hooks/
папка должна быть сразу под ней.
xxx.git/hooks
И когда вы настраиваете сервер Git, лучшая практика остается для этого сервера, чтобы управлять только голыми репозиториями.
Увидеть:
- " Git push только для открытых репозиториев? "
- " Каковы последствия использования
receive.denyCurrentBranch
в Git? "