Git
Inhaltsverzeichnis
Beschreibung
Grundlagen
Git ist ein kostenloses, quelloffenes Versionskontrollsystem, das im Jahr 2005 von Linus Torvalds entwickelt wurde. Im Gegensatz zu älteren zentralisierten Systemen wie SVN oder CVS basiert Git auf einem verteilten Modell: Jeder Entwickler verfügt lokal über eine vollständige Kopie des gesamten Repository-Verlaufs. Dies führt zwar zu einem langsameren initialen Klonen, beschleunigt jedoch nachfolgende Operationen wie commit, blame, diff, merge und log erheblich.
Git bietet umfassende Funktionen für das Branching, Merging und die nachträgliche Bearbeitung des Repository-Verlaufs. Diese Flexibilität hat zur Entstehung zahlreicher innovativer und leistungsstarker Entwicklungs-Workflows und Tools geführt. Eines der bekanntesten Werkzeuge ist der Pull Request, der es Teams ermöglicht, effizient in separaten Branches zu arbeiten und Code gemeinsam zu überprüfen.
Git gilt heute als das weltweit am weitesten verbreitete Versionskontrollsystem und hat sich als moderner Standard in der Softwareentwicklung etabliert.
Funktionsweise
Nachfolgend wird die grundlegende Arbeitsweise mit Git beschrieben:
- Ein Repository (Projekt) wird über ein Git-Hosting-Dienst wie z. B. Bitbucket, GitHub oder GitLab erstellt.
- Das Repository wird auf das lokale System geklont, wodurch eine vollständige Kopie aller Versionsdaten verfügbar ist.
- Neue Dateien werden dem lokalen Repository hinzugefügt und die Änderungen mit einem Commit festgehalten. Dabei wird der aktuelle Stand des Projekts versioniert.
- Mittels Push werden die lokalen Änderungen in den entfernten Repository-Branch (häufig main oder master) übertragen.
- Änderungen, die direkt über das Git-Hosting-Tool vorgenommen wurden (z. B. über die Weboberfläche), werden ebenfalls per Commit gespeichert.
- Um diese externen Änderungen auf das lokale System zu übertragen, wird ein Pull ausgeführt.
- Für neue Features oder Bugfixes wird üblicherweise ein separater Branch erstellt. Änderungen innerhalb dieses Branches werden wie gewohnt committet.
- Anschließend wird eine Pull-Anfrage (engl. Pull Request) erstellt, um die Änderungen zur Übernahme in den Haupt-Branch vorzuschlagen.
- Nach erfolgreicher Code-Review und eventueller Diskussion wird der Branch per Merge in den Haupt-Branch integriert.






