git ist ein verteiltes Versionsverwaltungssystem. Im Gegensatz zu Subversion (SVN) wird nicht zwingend ein zentraler Server benötigt. Somit kann man die Vorteile einer Versionsverwaltung auch dann nutzen, wenn man gerade keinen Internetzugang zur Verfügung hat.
Im folgenden soll ein zentrales Repository erstellt werden. Dieses wird über WebDAV bereitgestellt.
Natürlich muss bereits ein fertiges (passwortgeschütztes) WebDAV-Verzeichnis existieren (siehe WebDAV).
Weiterhin wird ein funktionierendes git benötigt. Dieses Tutorial wurde mit Ubuntu 9.10 und git Version 1.7.0.2 erstellt.
Da einige Fehler bei der direkten Erstellung des Repositories auf dem WebDAV-Verzeichnis auftreten, sollte die Einrichtung zunächst lokal erfolgen.
Dazu erstellt und konfiguriert man in einem neuen Ordner ein neues git Repository:
mkdir neuesprojekt cd neuesprojekt git init --bare --shared=all git update-server-info
Damit ist die eigentliche Einrichtung des zentralen Repositories abgeschlossen. Natürlich muss das Repository noch auf den WebDAV-Server verschoben werden (z.B. nach http://webdav.meinedomain.tld/neuesprojekt/).
Auf dem Client clont man sich als erstes das erstellte Repository:
git clone http://benutzername@webdav.meinedomain.tld/neuesprojekt/ cd neuesprojekt/
Man sollte daran denken den eigenen Namen und die eigene E-Mail Adresse sinnvoll festzulegen:
git config --global user.name Name git config --global user.email E-Mail-Adresse
Nun kann das eigene Repository mit Daten gefüllt werden:
nano wichtige_datei git add wichtige_datei git commit -m "inital commit"
Die eigenen Änderungen (des master branches) werden nun auf das zentrale Repository übertragen:
git push tiggerswelt master
Falls es beim erstmaligen pushen eines neuen Branches zu Problemen kommt (fatal: git-http-push failed), kann es helfen per FTP eine leere Datei mit dem Namen des neuen Branches im Ordner refs/heads/ im zentralen Repository zu erstellen (und ggf. Schreibrechte setzen).