Хороший способ сделать это - создать post-commit
, который запускает git checkout -f
с рабочим деревом, установленным в каталог, который открыт вашим веб-сервером, и в каталоге git, установленном в каталог .git
в вашей разработке.репозиторий.Например, вы можете создать файл .git/hooks/post-commit
, который:
#!/bin/sh
unset GIT_INDEX_FILE
export GIT_WORK_TREE=/example.com/
export GIT_DIR=/home/whoever/development/web-project/.git/
git checkout -f
Будьте осторожны с этим, однако - -f
означает, что git может удалять или перезаписывать файлы, чтобы /example.com/
соответствовал деревув вашем последнем коммите.
(Не забудьте также сделать исполняемый файл .git/hooks/post-commit
.)