Zum Inhalt springen

Glossar · R

Repository

Ein Repository ist ein Speicherort für Softwareprojekte, der den Quellcode und die Versionshistorie enthält.

Definition

Ein Repository ist ein zentraler Speicherort, in dem Softwareprojekte abgelegt werden. Es enthält den Quellcode, die zugehörigen Dateien sowie die Versionshistorie des Projekts. Repositories dienen dazu, den Entwicklungsprozess zu organisieren und die Zusammenarbeit mehrerer Entwickler zu ermöglichen.

Repositories können lokal auf einem Rechner oder auf einem entfernten Server gespeichert sein. Sie bilden die Grundlage für Versionsverwaltungssysteme, die Änderungen am Code nachvollziehbar machen und eine koordinierte Entwicklung ermöglichen.

Was bedeutet das für Ihr Unternehmen?

Das Repository enthält den Quellcode Ihrer Website oder Anwendung samt aller Änderungen und ist damit einer der wertvollsten Bestandteile eines Softwareprojekts. Achten Sie darauf, dass es auf einem Konto liegt, auf das Ihr Unternehmen selbst Zugriff hat, nicht nur auf dem privaten Konto eines Entwicklers. Fehlt dieser Zugang, wird ein Dienstleisterwechsel oder das Ausscheiden eines Freelancers schnell zum Problem.

Hintergrund und Geschichte

Die Idee von Repositories entstand mit der Entwicklung von Versionsverwaltungssystemen in den 1970er und 1980er Jahren. Frühe Systeme wie SCCS (Source Code Control System) und RCS (Revision Control System) legten den Grundstein für die strukturierte Verwaltung von Quellcode.

Mit der Verbreitung von verteilten Versionskontrollsystemen wie Git, das 2005 von Linus Torvalds entwickelt wurde, gewann das Konzept des Repositories an Bedeutung. Git ermöglicht es, Repositories lokal zu klonen und Änderungen dezentral zu verwalten.

Funktionsweise

Ein Repository speichert nicht nur den aktuellen Zustand des Quellcodes, sondern auch alle vorherigen Versionen. Dies geschieht durch Snapshots oder Deltas, die Veränderungen zwischen den Versionen dokumentieren.

Durch Branches und Tags können Entwickler parallel an verschiedenen Funktionen oder Versionen arbeiten. Das Repository verwaltet diese Zweige und ermöglicht das Zusammenführen (Merge) von Änderungen.

Einsatzgebiete

Repositories werden vor allem in der Softwareentwicklung eingesetzt, um Quellcode und Dokumentation zu verwalten. Sie sind Teil der Continuous Integration und Continuous Deployment (CI/CD) Pipelines.

Darüber hinaus dienen Repositories auch als Archiv für Softwareprojekte, die öffentlich zugänglich sind, etwa auf Plattformen wie GitHub, GitLab oder Bitbucket. Dort unterstützen sie die kollaborative Entwicklung und das Open-Source-Modell.

Abgrenzung zu verwandten Begriffen

Im Gegensatz zu einem einfachen Dateispeicher enthält ein Repository eine Versionshistorie und ermöglicht die Nachverfolgung von Änderungen. Ein Dateiserver oder Cloud-Speicher bietet diese Funktionen in der Regel nicht.

Ein Repository unterscheidet sich auch von einem Paket-Repository, das kompilierte Softwarepakete zur Installation bereitstellt. Während ein Quellcode-Repository den Code selbst verwaltet, dienen Paket-Repositories der Verteilung fertiger Software.