GIT - moderne Versionskontrolle
1. März
Wer mit Software-Entwicklung zu tun hat, kennt das Problem: Man ist mit einer Arbeit nie wirklich fertig. Zum einen warten neue Features darauf, eingebaut zu werden, zum anderen finden sich im Lauf der Zeit immer wieder Fehler, die man mit Bugfixes entfernt. So gibt es schnell eine ganze Reihe von verschiedenen Versionen des eigentlichen Projektes - und hier setzen Versionskontroll-Systeme an, die nicht nur die Versionsnummern verwalten, sondern auch ein "Rückspulen" erlauben. Kurz: "If you make a lot of changes, but decided you made a mistake, this will save your butt."
Was in der Theorie einfach klingt, scheitert oft an der rauen Wirklichkeit. So muss man sich als Entwickler erst in die Software einarbeiten, bei vielen Systemen diese Software erst einrichten (CVS/SVN-Server aufsetzen), ärgert sich über fehlende Literatur oder gibt bei den ersten Problemen mit "Was für ein Dreck!" auf. Denn solang man allein an kleinen Projekten arbeitet, ist man ja eh davon überzeugt, alle Probleme mit Versionen durch regelmässige Backups gut im Griff zu haben. Doch selbst wenn man diese Backups auf Dauer so regelmässig macht, wie man es sich vorgenommen hat (alte Sysadmin-Weisheit: "Niemand will Backups - alle wollen immer nur Restore!"), ist die Suche nach dem Ursprung eines Fehlers mühsam.
GIT ist ein moderner Ansatz eines Versionskontroll-Systems. Unter Linux ist es schnell installiert und lässt sich sofort benützen, unterstützt viel mehr als andere Systeme (CVS z.B.) mit hilfreichen Ausgaben die tägliche Arbeit, kann als verteiltes System das lokale Repository mit einem Server abgleichen, kann mit einem einzigen Kommando das gesamte Projekt in einen älteren oder alternativen Entwicklungsstand versetzen, erlaubt den Start ganz ohne Infrastruktur (remote Server kann man später jederzeit ergänzen)...
Vor einer Woche beschäftigte ich mich zum ersten Mal damit, und seitdem bin ich schwer begeistert. Für Windows und MacOS X gibt es grafische Frontends, auf der Linux-Commandline macht das Arbeiten richtig Spass, es gibt jede Menge sehr guter Dokumentation im Netz, und mit Unfuddle.com gibt es sogar einen Webdienst, der kostenlos ein Remote-Repository bereitstellt, um es für eigene Projekte nutzen zu können.
- ChaosRadio Express #130 beschreibt git ausführlich (deutsch) (fast 3h)
- Linus Torwalds erklärt GIT bei Google TechTalk (englisch) (1h)
- die GIT-Website ist voll nützlicher Dokus (englisch)
- Ein knappes, aber gutes Tutorial von Michael Jakl (englisch)
Programmierer, HTML-Entwickler und alle anderen, die viel mit Texten arbeiten, kann ich git nur ans Herz legen!
<< #709 | Kein Kommentar | Kommentieren | #711 >>