Zum Inhalt springen
Informatik · Klasse 10 · Software-Projektmanagement · 2. Halbjahr

Versionsverwaltung mit Git

Die Schülerinnen und Schüler arbeiten gemeinsam am Quellcode und lösen Konflikte mithilfe von Versionsverwaltungssystemen.

KMK BildungsstandardsKMK: STD.02KMK: STD.04

Über dieses Thema

Die Versionsverwaltung mit Git lehrt Schülerinnen und Schüler in Klasse 10, wie sie kollaborativ an Quellcode arbeiten, Änderungen sichern und Konflikte lösen. Sie üben Befehle wie init, add, commit, branch und merge, um zu verstehen, wie Git die Projektgeschichte speichert. Dies beantwortet zentrale Fragen: Wie macht man Änderungen rückgängig, ohne das Projekt zu zerstören? Was passiert bei Merge-Konflikten? Warum ist Open Source global wichtig? Die Inhalte entsprechen den KMK-Standards STD.02 (algorithmisches Problemlösen) und STD.04 (kooperative Arbeitsweisen).

Im Fach Digitale Welten Gestalten verbindet das Thema Programmierung mit Projektmanagement. Schüler erleben, wie Branches parallele Entwicklungen ermöglichen, Merges Code vereinen und Konflikte durch manuelle Auflösung beigelegt werden. Sie erkennen den Wert von Open Source: Globale Beiträge bauen auf geteilter Historie auf. Dies stärkt Teamfähigkeiten und Verständnis für reale Softwareentwicklung.

Aktives Lernen eignet sich hervorragend, da abstrakte Git-Konzepte durch praktische Anwendung konkret werden. Wenn Schüler echte Repositories in Gruppen bearbeiten, Konflikte provozieren und lösen, festigen sie Kompetenzen nachhaltig und lernen aus Fehlern in sicherer Umgebung.

Leitfragen

  1. Wie kann man Änderungen rückgängig machen, ohne das Projekt zu zerstören?
  2. Was passiert bei einem Merge-Konflikt?
  3. Warum ist Open Source für die globale Entwicklung wichtig?

Lernziele

  • Demonstrieren Sie die grundlegenden Git-Befehle (init, add, commit, branch, merge) zur Verwaltung eines Softwareprojekts.
  • Analysieren Sie die Historie eines Git-Repositorys, um frühere Änderungen und Entwicklungszweige nachzuvollziehen.
  • Erklären Sie die Ursachen und Lösungsstrategien für Merge-Konflikte in einem kollaborativen Entwicklungsprozess.
  • Bewerten Sie die Bedeutung von Versionsverwaltungssystemen für die Zuverlässigkeit und Nachvollziehbarkeit von Softwareprojekten.
  • Erstellen Sie einen Branch für eine neue Funktion, integrieren Sie ihn nach Fertigstellung zurück und dokumentieren Sie den Prozess.

Bevor es losgeht

Grundlagen der Programmierung (Variablen, Schleifen, Funktionen)

Warum: Ein grundlegendes Verständnis von Code ist notwendig, um Änderungen daran nachvollziehen und verwalten zu können.

Dateiverwaltung auf dem Computer

Warum: Schüler müssen wissen, wie Dateien und Ordner organisiert und gespeichert werden, um die Konzepte von Repositories und Projektstruktur zu verstehen.

Schlüsselvokabular

RepositoryEin zentraler Speicherort, in dem alle Dateien eines Projekts und deren gesamte Änderungshistorie abgelegt werden.
CommitEin Schnappschuss des Projektzustands zu einem bestimmten Zeitpunkt, der eine Beschreibung der vorgenommenen Änderungen enthält.
BranchEine unabhängige Entwicklungslinie, die es ermöglicht, parallel an neuen Funktionen zu arbeiten, ohne den Hauptcode zu beeinflussen.
MergeDer Prozess, bei dem Änderungen aus einem Branch in einen anderen integriert werden, um Code zusammenzuführen.
Merge-KonfliktEine Situation, die entsteht, wenn Git nicht automatisch entscheiden kann, wie widersprüchliche Änderungen aus verschiedenen Branches zusammengeführt werden sollen.

Vorsicht vor diesen Fehlvorstellungen

Häufige FehlvorstellungGit speichert nur die aktuelle Version des Codes.

Was Sie stattdessen lehren sollten

Git erfasst jeden Commit als Snapshot der gesamten Historie, abrufbar mit git checkout. Aktive Übungen wie das Erkunden von git log in Gruppen helfen Schülern, diese Schichten zu visualisieren und rückgängig zu machen, was das Verständnis vertieft.

Häufige FehlvorstellungMerge-Konflikte zerstören den Code unwiderruflich.

Was Sie stattdessen lehren sollten

Konflikte markieren nur überlappende Änderungen, die manuell gelöst werden. Peer-Diskussionen bei der Simulation zeigen, wie git merge hilft, und fördern Problemlösung. Schüler lernen, Branches zu nutzen, um Risiken zu minimieren.

Häufige FehlvorstellungVersionsverwaltung ist nur für Profis nötig.

Was Sie stattdessen lehren sollten

Jedes kollaborative Projekt profitiert davon, wie Open-Source-Beispiele zeigen. Hands-on mit echten Repos demonstriert den Nutzen sofort und motiviert Schüler, Git routinemäßig einzusetzen.

Ideen für aktives Lernen

Alle Aktivitäten ansehen

Bezüge zur Lebenswelt

  • Softwareentwicklerteams bei großen Technologieunternehmen wie Google oder Microsoft nutzen Git täglich, um gemeinsam an komplexen Betriebssystemen oder Anwendungen wie Android oder Windows zu arbeiten. Sie verwenden Branches für neue Features und beheben Fehler über Pull Requests.
  • Open-Source-Projekte wie der Linux-Kernel oder die Programmiersprache Python werden von Tausenden von Entwicklern weltweit über Plattformen wie GitHub verwaltet. Git ermöglicht es ihnen, Beiträge zu verfolgen, Code zu überprüfen und die Projektentwicklung transparent zu gestalten.

Ideen zur Lernstandserhebung

Lernstandskontrolle

Die Schüler erhalten die Aufgabe, drei Git-Befehle zu nennen, die sie heute gelernt haben, und kurz zu erklären, wofür jeder einzelne verwendet wird. Zusätzlich sollen sie eine Frage notieren, die sie noch zum Thema Merge-Konflikte haben.

Kurze Überprüfung

Der Lehrer präsentiert einen einfachen Code-Ausschnitt und fragt: 'Wie würdet ihr diesen Code sichern, bevor ihr eine neue Funktion beginnt?' oder 'Was ist die Funktion eines Branches in diesem Szenario?' Die Antworten werden mündlich oder kurz schriftlich abgefragt.

Gegenseitige Bewertung

Zwei Schüler arbeiten an einem kleinen gemeinsamen Projekt mit Git. Nach Abschluss einer kleinen Aufgabe tauschen sie ihre Repositories aus. Jeder Schüler prüft die Commit-Nachrichten des anderen auf Klarheit und Vollständigkeit und gibt ein kurzes mündliches Feedback zur Struktur der Commits.

Häufig gestellte Fragen

Wie löst man einen Merge-Konflikt in Git?
Bei einem Konflikt markiert Git die streitigen Zeilen mit <<< und >>>. Öffnen Sie die Datei, bearbeiten Sie die Konflikte manuell, entfernen Sie die Marker und committen Sie mit git add und git commit. Aktive Paararbeit hilft, Ursachen zu verstehen und Lösungen zu testen, was das Lernen vertieft. Üben Sie mit Branches, um Schäden zu vermeiden.
Warum ist Git für Open Source wichtig?
Git ermöglicht globale Zusammenarbeit: Jeder kann beitragen, Änderungen tracken und Konflikte lösen, ohne den Hauptcode zu gefährden. Pull Requests sorgen für Qualitätskontrolle. Schüler sehen dies durch Forking echter Projekte und verstehen, wie Millionen Zeilen Code so entstehen. Dies fördert Wertschätzung für kollaborative Entwicklung.
Wie kann man Änderungen in Git rückgängig machen?
Nutzen Sie git checkout für alte Commits, git revert für sichere Undo oder git reset für lokale Änderungen. Zeigen Sie git reflog für die volle Historie. Praktische Übungen in Gruppen machen diese Befehle greifbar und bauen Vertrauen auf, ohne Datenverlust zu fürchten.
Wie hilft aktives Lernen beim Verständnis von Git?
Aktives Lernen macht Git-Konzepte wie Branches und Merges erfahrbar: Schüler arbeiten in Gruppen an Repos, provozieren Konflikte und lösen sie live. Dies schafft tieferes Verständnis als Theorie allein, da sie Erfolge und Fehler direkt sehen. Reflektion in Runden stärkt Problemlösung und Teamfähigkeiten, passend zu KMK-Standards.

Planungsvorlagen für Informatik