Wenn das git-repo auf demselben Server liegt wie die Webserver-Dokumentroot, kann man recht einfach die Serverdokumente nach jedem Commit updaten lassen.Auf dem Server muß ebenfalls git installiert se
Wenn das git-repo auf demselben Server liegt wie die Webserver-Dokumentroot, kann man recht einfach die Serverdokumente nach jedem Commit updaten lassen.
Auf dem Server muß ebenfalls git installiert sein.
Nachdem das Repo angelegt wurde, z.B. unter src/git/repo.git kann man unter /src/git/repo.git/hooks (dort sind ein paar Samples, komischerweise aber nicht für diesen Zweck) eine Datei names post-receive anlegen, mit folgendem Inhalt:
#!/bin/bash
while read oldrev newrev ref
do
if [[ $ref =~ .*/master$ ]];
then
echo "Master ref received. Deploying master branch to production..."
git --work-tree=/var/www/magento --git-dir=/var/www/src/git/repo.git checkout -f
else
echo "Ref $ref successfully received. Doing nothing: only the master branch may be deployed on this server."
fi
done
Nach jedem push von der master-branch bekommt man so eine Meldung (siehe echo-Zeile oben).