Alle die mit den Begriffen CVS, SVN, SCM o.ä. nichts anfangen können, dürfen diesen Beitrag gerne ignorieren. Alle Interessierten dürfen gerne weiterlesen. :)
Dieser Artikel soll die ersten Schritte mit Git erklären und den Einstieg vereinfachen. An der Uni habe ich nur Erfahrungen mit SVN machen dürfen. Den Begriff “Git” kann ich mich nicht erinnern jemals gehört zu haben. Was vermutlich daran lag, dass Git in der ersten Version erst 2005 von Linus Torvalds entwickelt wurde. Zu Beginn muss es wohl recht kompliziert und komplex zu nutzen gewesen sein. Wie auch in dem äußerst interessanten Vortrag bei Google Tech Talks direkt von Linus zu erfahren ist.
Im Unterschied zu SVN ist Git ein dezentrales Source-Code-Management System, d.h. dass jeder Nutzer eine vollständige Kopie des gesamten Repositories bei sich lokal auf dem Rechner hat. Jeder ist sozusagen Server und Client zusammen. Was genau die Vor- und Nachteile sind, kann sich jeder selbst mit einer einfach Google-Suche aneignen. Hier will ich letztlich nur den praktischen Einstieg niederschreiben. Ein guter Einstieg ist zu finden unter: “Why Git Is Better Than X”
Für Windows und Mac gibt es fertige Installer, in Linux installiert man es einfach über die Paketverwaltung. Um sich ein wenig mit den Grundlagen vertraut zu machen, fängt man am besten in der Konsole an.
Die häufigsten Aktionen in git sind für Einsteiger wohl “init”, “clone”, “add”, “commit”, “push”, “pull” und “fetch”.
Mit “git init” erzeugt man neue Repositories, mit “git clone” erstellt man eine lokale Kopie eines bereits existierenden Repositories. Wie die anderen miteinander in Verbindung stehen, lässt sich am besten mit folgender Grafik von “Why Git Is Better Than X” is erklären:

“git pull” ist eine Kombination aus “git fetch” und “git merge”. Aufgrund des lokalen Repositories kann man nun auch kurze und knackige Commits erstellen, ohne sich die ganze Zeit mit einem entfernten und möglicherweise langsamen Repository zu synchronisieren.
Mehr braucht man eigentlich für den Anfang nicht:
- einfach ein Repository klonen
- gewünschte Änderungen durchführen
- veränderte Dateien mit “git add <filename>” hinzufügen
- mit “git commit -m ‘Commit message’” die Änderungen ins lokale Repository schieben
- Schritte 2-4 beliebig oft wiederholen
- und mit “git push” alle Commits an das remote Repository schicken
Alles weitere sucht man sich bei Google bei Bedarf zusammen.