Diese Methode kann hilfreich sein, wenn man z.B. seine Webseite mit Git
verwaltet und einen einfachen Weg sucht, Änderung oder auch alte Schnappschüsse
einfach publizieren zu können.
Eine read-only Kopie des Git Repos für den HTTP Zugriff erstellen
Man benötigt im GIT Repo lediglich ein Shellscript, welches nach jedem Push
aufgerufen wird. In Git nennt sich so etwas "hooks".
hooks/post-receive
#!/bin/sh
export http_dir="/srv/http/var/htdoc/git"
read oldrev newrev refname
branch=${refname#refs/heads/}
repo=${PWD##*/}
if [ "${branch}" = "master" ]; then
umask 0022
rm -rf ${http_dir}/${repo}
git clone --bare --local /srv/git/${repo} ${http_dir}/${repo}
cd ${http_dir}/${repo} && git update-server-info
else
echo "Ignoring update for branch ${branch}"
fi