Я ' Я пытаюсь настроить Git для размещения моего веб-сайта, чтобы я мог git pull
, чтобы текущая версия работала локально, а затем git push
, чтобы отправить изменения на удаленный сервер. Я настроил его так, чтобы он работал так, как я хочу, но после нажатия мне нужно вручную запустить git checkout -f
или git reset --hard HEAD
на удаленном сервере.
Я попытался поместить их в сценарий оболочки в качестве обработчика post-receive на сервере, но, похоже, это не имеет никакого эффекта. Я знаю, что сценарий запущен, потому что после нажатия я вижу «Изменения отправлены на сервер». Вот крючок после получения:
#!/bin/sh
git reset --hard HEAD
echo "Changes pushed to server."