Begriffserklärung | Zurück zur Übersicht

Git

Veröffentlicht am

In Softwareprojekten arbeitet man üblicherweise mit mehreren Personen und/oder an verschiedenen Features oder Themen parallel. Um dies zu ermöglichen und um außerdem eine nachvollziehbare Historie über vergangene Änderungen zu haben, nutzt man sogenannte Versionskontrollsysteme (engl. Source Code Management (SCM)). Git ist ein solches SCM und mit Abstand das populärste.

Jedes mit Git verwaltete Projekt hat eine baumartige Historie mit einem Startpunkt (als das Projekt neu kreiert wurde), einem Hauptzweig und davon abweichenden und wiederkehrenden Zweigen, sogenannten Branches. Jeder neue Knotenpunkt, also Verzweigung, Verlängerung oder Vereinigung von Ästen wird als sogenannter Commit bezeichnet und bezeichnet einen in sich abgeschlossenen Zustand des Projektes.

Die Commit-Historie eines aktuellen Projektes zeigt die baumartige Struktur Die Commit-Historie eines aktuellen Projektes zeigt die baumartige Struktur

Über die Änderungen zwischen den Commits, das sogenannte Diff, sind sämtliche Änderung sowie deren Zeitpunkt, Autor und Ursprung nachvollziehbar. So erlaubt es das System beispielsweise, bestimmte Commits als Versionen des Projektes zu veröffentlichen (z.B. neue Updates im App Store) oder anhand der Historie nachzuvollziehen, durch wen und wann ein Bug in die Software eingebracht wurde. Git ist damit ein unerlässliches Werkzeug, welches in jedem Projekt und jeden Tag zum Einsatz kommt.

Beispiel für eine *Diff*-Darstellung aus dem Git-Projekt zu dieser Webseite Beispiel für eine Diff-Darstellung aus dem Git-Projekt zu dieser Webseite