Да, это, безусловно, возможно.
допустим, у меня есть "голый" репозиторий с именем /srv/production.git
на целевой системе/сервере.
о системе назначения я могу использовать команду cd /srv/production.git; GIT_WORK_TREE=/srv/production-www/ git checkout -f
если я нахожусь в непокрытом репозитории, команда немного отличается. Допустим, у меня есть не голая respository на /srv/testing
. Чтобы проверить, что я буду использовать cd /srv/testing/.git; GIT_WORK_TREE=/srv/production-www/ git checkout -f
на самом деле на моей системе я даже автоматизировать это в пост-коммит Хук в мою production.git
хранилище. Поэтому, когда вы нажимаете на production.git
последняя версия автоматически извлечь в веб-корень.
#!/bin/sh
#
# An example hook script that is called after a successful
# commit is made.
#
# To enable this hook, rename this file to "post-commit".
GIT_WORK_TREE=/srv/production-www/ git checkout -f
# ... misc other commands to verify permissions are set correctly.
если ваш единственный доступ к удаленной системе webdav, это, конечно, должно быть возможно, чтобы написать после фиксации крюк, который будет извлекать на хост webdav, либо непосредственно, либо во временном месте, которое вы можете сценарий загрузки.