
Repo
Ein Repo ist der zentrale Speicherort eines Softwareprojekts: Es enthält alle Dateien und zusätzlich die vollständige Geschichte jeder Änderung. Damit können viele Menschen gleichzeitig an derselben Software arbeiten, ohne sich die Arbeit zu zerstören.
Software besteht am Ende aus Textdateien. Diese Dateien liegen nicht einfach in einem Ordner auf einem Laptop, sondern in einem Repo. Die Kurzform steht für Repository, also Aufbewahrungsort. Ein Repo enthält alle Dateien eines Projekts und zusätzlich ein vollständiges Protokoll darüber, wer wann welche Zeile geändert hat. Man kann sich das wie einen Ordner mit eingebautem Gedächtnis vorstellen. Jede alte Version bleibt erhalten und lässt sich jederzeit wieder herstellen.
Warum Software ohne Repos nicht mehr entstehen würde
An einem größeren Programm arbeiten selten Einzelpersonen. Bei einem Betriebssystem oder einem KI-Framework sind es hunderte oder tausende Menschen, oft über viele Länder verteilt. Ohne gemeinsamen Speicherort würden sie sich permanent gegenseitig überschreiben. Das Repo ist die eine verbindliche Wahrheit darüber, wie der aktuelle Stand des Projekts aussieht.
Genauso wichtig ist die Rückwärtsrichtung. Wenn ein Update ein Programm kaputt macht, lässt sich im Protokoll nachsehen, welche Änderung dafür verantwortlich war. Man kann sie einzeln zurücknehmen, ohne alles andere zu verlieren. Diese Fähigkeit senkt das Risiko, überhaupt etwas Neues auszuprobieren.
Für die Öffentlichkeit haben Repos noch eine andere Bedeutung. Bei quelloffener Software, deren Code jeder einsehen darf, ist das Repo die Stelle, an der man tatsächlich nachprüfen kann, was ein Programm tut. Behauptungen einer Firma über ihre Software lassen sich dort gegen den echten Code halten.
Commits, Branches und der Weg zurück
Die Software, die Repos verwaltet, heißt in fast allen Fällen Git. Wer etwas geändert hat, fasst die Änderung zu einem Commit zusammen, also einem gespeicherten Zwischenstand mit kurzer Beschreibung. Diese Commits reihen sich zu einer Kette. Sie ist die Geschichte des Projekts und lässt sich Schritt für Schritt zurückverfolgen.
Damit sich niemand in die Quere kommt, arbeitet man in Branches. Ein Branch ist eine Abzweigung: eine eigene Kopie des Projekts, in der man frei herumprobieren kann. Ist die neue Funktion fertig und getestet, wird der Branch mit dem Hauptstand zusammengeführt. Diesen Schritt nennt man Merge.
Ein Repo liegt dabei meist doppelt vor. Auf einem Server steht die gemeinsame Fassung, auf jedem beteiligten Rechner eine vollständige lokale Kopie inklusive Geschichte. Man holt sich neue Commits der anderen mit pull und schickt eigene mit push zurück. Ein Pull Request ist die höfliche Variante davon: Man schlägt eine Änderung vor, andere sehen sie durch und stimmen zu, bevor sie im Hauptstand landet.
GitHub, Hugging Face und geleakter Code in den Nachrichten
Die bekannteste Plattform für Repos ist GitHub, das seit 2018 zu Microsoft gehört. Dort liegen millionenfach Projekte, von Schulaufgaben bis zu Linux. Für KI-Modelle hat sich Hugging Face als ähnliche Anlaufstelle etabliert. Dort enthält ein Repo nicht nur Code, sondern auch die trainierten Modelldateien selbst.
In Wirtschaftsnachrichten tauchen Repos vor allem bei zwei Gelegenheiten auf. Erstens bei Veröffentlichungen: Wenn ein Unternehmen ein Modell offenlegt, erkennt man am Repo, welche Lizenz gilt und was genau geteilt wird. Zweitens bei Sicherheitsvorfällen, wenn interner Code aus einem privaten Repo nach außen gelangt.
Ein häufiger Irrtum: Ein Repo ist keine Cloud-Ablage wie Dropbox oder Google Drive. Dort zählt nur die aktuelle Datei, hier zählt der ganze Verlauf. Und noch eine Verwechslung ist im Finanzteil derselben Nachrichtenseite möglich. Im Bankwesen bezeichnet Repo ein Rückkaufgeschäft mit Wertpapieren. Mit Software hat dieser Begriff nichts zu tun.