Zum Inhalt springen

Informatik · Klasse 11–13 · aktualisiert

Versionsverwaltung: Git, Branches und Teamarbeit

Du lernst, wie Versionsverwaltung Stände sichert, wie Branches und Merges Teamarbeit ermöglichen und wie du einen Beitrag nachvollziehbar integrierst.

0 von 13 Aufgaben gelöst

Versionsverwaltung: Git, Branches und Teamarbeit

Kurz gesagt

Eine Versionsverwaltung sichert alle Versionen von Dateien mit Zeitstempel und Benutzerkennung, sodass man sie später wiederherstellen kann. In Git arbeitest du in einem eigenen Branch, sicherst mit Commits und bringst die Änderung per Merge ins Projekt.

Mehrere Leute ändern dieselben Dateien, und nach einer Woche weiß niemand mehr, wer was gemacht hat. Genau dafür gibt es Versionsverwaltung. Mit Git kannst du Änderungen sichern, parallel in Branches arbeiten und Beiträge im Team kontrolliert zusammenführen.

Deine Lernziele

Hake ab, was du schon kannst. Löst du alle Aufgaben eines Abschnitts, hakt Mela das Ziel für dich ab.

4 Abschnitte

Stell dir vor, ein Team ändert gemeinsam dieselben Dateien. Ohne Ordnung weiß bald niemand mehr, wer was geändert hat. Eine Versionsverwaltung löst das: Sie sichert alle Versionen von Dateien in einem Archiv, und zwar mit Zeitstempel und Benutzerkennung. So können die Versionen später wiederhergestellt werden.

Weil zu jedem Versionswechsel Verfasser und Uhrzeit festgehalten werden, kann man genau nachvollziehen, wer wann was geändert hat. Bei Bedarf, zum Beispiel bei versehentlichen Änderungen, kann man zu einer früheren Version zurückkehren.

Zu den Hauptaufgaben gehören außerdem, die einzelnen Stände eines Projektes zu archivieren, alte Stände einzelner Dateien wiederherzustellen und den gemeinsamen Zugriff mehrerer Entwickler auf die Dateien zu koordinieren. Versionsverwaltungssysteme werden typischerweise in der Softwareentwicklung eingesetzt, um Quelltexte zu verwalten.

Git geht noch einen Schritt weiter. Der Hash-Wert (eine Art Prüfsumme) eines Commits, also eines gesicherten Standes, hängt von der vollständigen Historie ab, die zu ihm geführt hat. Deshalb ist es nicht möglich, die Versionsgeschichte nachträglich zu manipulieren, ohne dass sich der Hash-Wert ändert. Die Daten gelöschter und zurückgenommener Aktionen und Entwicklungszweige bleiben vorhanden und können wiederhergestellt werden, bis sie explizit gelöscht werden.

Definition

Versionsverwaltung

Eine Versionsverwaltung ist ein System, das zur Erfassung von Änderungen an Dokumenten oder Dateien verwendet wird. Alle Versionen liegen in einem Archiv.

Merke: Zu jedem Versionswechsel werden Verfasser und Uhrzeit festgehalten. Darum lässt sich nachvollziehen, wer wann was geändert hat.

Teste dich

LeichtWelche Angaben werden zu jeder gesicherten Version festgehalten?
MittelDu hast eine Datei versehentlich verändert. Was bietet die Versionsverwaltung?

Alles auf einen Blick

Versionsverwaltung

  • Versionen

    Ein Archiv sichert alle Versionen mit Zeitstempel und Benutzerkennung.

  • Orte

    Arbeitsverzeichnis, Staging-Bereich, Repository; nach dem Commit sind Änderungen zunächst nur lokal.

  • Branch

    Parallele Entwicklung; in Git ein Zeiger auf einen Commit.

  • Merge-Konflikt

    Entsteht bei Änderungen am gleichen Teil der Daten und wird manuell gelöst.

  • Teambeitrag

    Eigener Branch, Push, Pull-Request, Review, Merge, dann Build und Tests.

Musteraufgabe · Schritt für Schritt

Beitrag „Dunkelmodus“ einplanen (ausgedachtes Beispiel)

  1. 1Aufgabe: Mia soll in der Schul-App einen Dunkelmodus ergänzen. Plane den Weg ins Projekt.
  2. 2Schritt 1: Mia entwickelt den Dunkelmodus in einem eigenen Branch und committet die Änderung.
  3. 3Schritt 2: Sie pusht den Branch in das gemeinsame Repository.
  4. 4Schritt 3: Sie stellt auf der Plattform einen Pull-Request.
  5. 5Schritt 4: Tom prüft den Code im Review. Er hat ihn nicht selbst geschrieben.
  6. 6Schritt 5: Wird der Pull-Request akzeptiert, wird gemergt. Bei einem Merge-Konflikt löst jemand ihn manuell.
  7. 7Schritt 6: Im Hauptbranch startet automatisch ein Build- und Testzyklus.
  8. 8Probe: Der eigene Branch hält die Arbeit getrennt, das Review bringt einen zweiten Blick, die Tests melden Integrationsprobleme laufend.

Fehler finden

Prüfe die Aussagen zu git add und git commit In einer Zeile steckt ein Fehler. Tippe sie an.

Lückentext

Wähl in jeder Lücke das passende Wort und prüf dann deine Antworten.

Bei Git heißt der Hauptzweig oft . Die Vorstufe zum Commit heißt . Ein Merge-Konflikt kann nur aufgelöst werden.

Karteikasten

Erst selbst überlegen, dann umdrehen.

Übung mit Feedback

Abschluss-Check: Versionsverwaltung

LeichtWelche Aufgabe gehört zu einer Versionsverwaltung?
MittelWas unterscheidet einen Fork von einem Branch?
SchwerDu willst einen Beitrag im Team integrieren. Welche Reihenfolge ist sinnvoll?

Weiterlesen in Informatik