Stefan Franke

Fundamentale Ideen der Informatik

Versionskontrolle & Git

PH Weingarten

Übersicht

  • Einstieg: AI Tandem Lab — KI vs. Computational Thinking
  • Erkenntnisse festhalten — Reflexion Sitzung 11
  • Warum Versionskontrolle? — zwei Alltagsprobleme
  • Was ist ein Versionskontrollsystem? — commit, push, pull
  • Forgejo im Browser — git.md-phw.de, ganz ohne Terminal
  • Praxis: euer erstes Repository — zu zweit
  • Reflexion: Ist Versionskontrolle eine fundamentale Idee?

Einstieg: AI Tandem Lab

KI & Computational Thinking — im Tandem vertiefen

Arbeitsphase
25 min

Euer Thema mit einem KI-Tool vertiefen & kritisch prüfen

Tandemphase
15 min

Euch gegenseitig erklären: KI ↔ CT

Ihr braucht: ein KI-Tool (ChatGPT, Claude, Gemini, …)

Ablauf

2. Warteraum

Gruppe A oder B?

3. Arbeitsphase

A: KI · B: CT — mit KI-Tool vertiefen

4. Tandemphase

Gegenseitig erklären (ca. 7 min pro Person)

Timer läuft automatisch – immer im Blick behalten!

Heutige Session

franke-lab.de/ai-tandem-lab

Gruppe A — Künstliche Intelligenz
Anschluss an Sitzung 9
  • KI-Halluzinationen entdecken & prüfen
  • Neuronale Netze: was steckt hinter der KI?
Gruppe B — Computational Thinking
Anschluss an Sitzung 10
  • Unplugged-Aktivitäten entwickeln lassen
  • CT & KI-Literacy — wie hängt das zusammen?
Im Tandem: erklärt euch gegenseitig euer Thema — A erklärt KI, B erklärt CT.

Jetzt beitreten!

franke-lab.de/ai-tandem-lab

Präsenz
FundIdee — KI vs. CT (Onsite)
fundidee
Zoom
FundIdee — KI vs. CT (Zoom)
fundidee

Name eingeben → passende Session wählen → Passwort fundidee

Erkenntnisse festhalten

Nach dem Tandem: Haltet eure neuen Erkenntnisse aus dem AI Tandem Lab kurz fest — im ersten Abschnitt der Reflexion.

franke-lab.de/lehre/sose/fundidee/reflexion.html?sitzung=11

Danach Wechsel zum heutigen Hauptthema: Versionskontrolle.

Heute neu: Versionskontrolle

Ihr habt eigene Dateien — Notizen, kleine Webseiten, Aufgaben. Aber:

  • Wie behaltet ihr den Überblick über Versionen?
  • Wie arbeitet ihr zu zweit an denselben Dateien?

Genau dafür gibt es Versionskontrollsysteme.

Problem 1: Versionierung

  • Kennt ihr das?
    • index.html
    • index_v2.html
    • index_final.html
    • index_final_WIRKLICH_FINAL.html
  • Was, wenn ihr eure index.html kaputt macht?
  • Wie kommt ihr zur letzten funktionierenden Version zurück?

Problem 2: Zusammenarbeit

  • Beide ändern dieselbe Datei
  • Wer zuletzt speichert, überschreibt die Änderungen des anderen
  • Keiner sieht, was der/die andere geändert hat
  • Keine Möglichkeit, Änderungen sauber zusammenzuführen

Beide Probleme löst ein Versionskontrollsystem.

Was ist ein Versionskontrollsystem?

  • Ein Logbuch für euer Projekt
  • Es merkt sich jede Version eurer Dateien
  • Ihr könnt jederzeit zu einer früheren Version zurückspringen
  • Es hilft, Änderungen mehrerer Personen zusammenzuführen
Git ist das bekannteste Versionskontrollsystem.
Wichtig: Git ≠ GitHub ≠ Forgejo — Git ist das Werkzeug, Forgejo/GitHub sind Online-Plattformen dazu.

Drei Grundbegriffe: commit · push · pull

commit

Eine Version speichern — ein Schnappschuss mit kurzer Beschreibung („Nachricht“).

push

Eure gespeicherten Versionen hochladen zur Plattform (Forgejo).

pull

Die neueste Version von der Plattform herunterholen.

💻
Dein Gerät
bearbeiten & committen
push →
← pull
🔒
Forgejo
git.md-phw.de

Heute machen wir alles im Browser: dort wird beim Speichern direkt committet — push & pull passieren im Hintergrund.

Forgejo – die Projektplattform der PH

  • git.md-phw.de
  • Wie GitHub – aber selbst gehostet an der PH (Datenschutz!)
  • Anmeldung mit eurem PH-Account
  • Nicht nur für Code – für alle Arten von Dateien
Heute arbeiten wir komplett im Browser — kein Terminal, keine Installation.

Alles im Browser (GUI)

  • Repository anlegen – euer Projekt-Ordner online
  • Datei anlegen & bearbeiten – HTML, Text, Markdown direkt online
  • Commit – speichern mit einer kurzen Nachricht (was habe ich geändert?)
  • Verlauf – jede Änderung nachvollziehen, wer & wann
  • Zusammenarbeiten – Partner:in einladen (Collaborator)

Öffentlich oder privat?

🌎 Öffentlich (public)
  • Jede:r im Internet kann es sehen
  • Gut für Portfolio, Showcase, Open Source
  • Ändern dürfen nur eingeladene Personen
🔒 Privat (private)
  • Nur du und eingeladene Personen sehen es
  • Gut für unfertige Arbeiten, Persönliches
  • Sichtbarkeit lässt sich später ändern

Praxis: euer erstes Repository (zu zweit)

  1. Auf git.md-phw.de anmelden (PH-Account)
  2. Neues Repository anlegen — Name wählen, öffentlich oder privat, „README“ ankreuzen
  3. Neue Datei index.html anlegen, etwas HTML schreiben → Commit mit Nachricht
  4. Partner:in als Collaborator einladen (Settings → Collaborators)
  5. Zu zweit abwechselnd bearbeiten & committen → danach den Verlauf ansehen: wer hat was geändert?

Festhalten in der Reflexion: reflexion.html?sitzung=11

Ist Versionskontrolle eine fundamentale Idee?

Überprüfung anhand der vier Kriterien (Schwill, 1993):

Horizontalkriterium

Überall, wo digital zusammengearbeitet wird: Code, Texte, Forschungsdaten, Wikipedia, Cloud-Dokumente …

Vertikalkriterium

Vom einfachen „Rückgängig“ (Strg+Z) bis zu verteilten Systemen, Merge-Strategien & Hashing

Zeitkriterium

Versionieren ist uralt (Manuskripte, Buchhaltung); digitale VCS seit den 1970ern, Git seit 2005 — Grundidee stabil

Sinnkriterium

Täglich erfahrbar: Rückgängig-Funktion, Dateiversionen in der Cloud, „Änderungsverlauf“

Eure Position formuliert ihr in der Reflexion.

Fragen?



Sitzungsreflexion

franke-lab.de/lehre/sose/fundidee/reflexion.html?sitzung=11

Reflexion verfassen → HTML kopieren → in Mahara einfügen


To Do's:

  • AI-Tandem-Lab-Erkenntnisse festhalten (Reflexion Sitzung 11)
  • Erstes Repository auf git.md-phw.de anlegen & zu zweit committen