Ya, ini tentu saja mungkin.
Katakanlah saya memiliki repositori telanjang bernama /srv/production.git
pada sistem tujuan / server.
Pada sistem tujuan saya dapat menggunakan perintah cd /srv/production.git; GIT_WORK_TREE=/srv/production-www/ git checkout -f
Jika saya di repositori non-telanjang, perintahnya sedikit berbeda. Katakanlah saya punya tempat penyimpanan yang tidak kosong di /srv/testing
. Untuk checkout yang akan saya gunakancd /srv/testing/.git; GIT_WORK_TREE=/srv/production-www/ git checkout -f
Bahkan pada sistem saya, saya bahkan mengotomatiskan ini dalam post-commit hook di production.git
repositori saya . Jadi ketika Anda mendorong ke production.git
versi terbaru secara otomatis memeriksa ke root web.
#!/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.
Jika satu-satunya akses Anda ke sistem jarak jauh adalah webdav, tentu saja dimungkinkan untuk menulis kait pasca-komit yang akan checkout ke host webdav, baik secara langsung atau ke lokasi sementara, yang kemudian dapat Anda skripkan unggahan.