Inhalt
• Allgemeines zu Versionsverwaltungen
• Git Einführung, Git Grundlagen/Konzepte, Unterschied zu zentralen Versionsverwaltungen
• Was ist ein SHA-1 Hash und warum ist er in Git so wichtig
• Grundlagen zu Git Areas (Working Tree, Staging Area, Lokales Repository)
• Git Konsole und die wichtigsten Git Kommandos
• Änderungen commiten
• Grundlagen zu Git-Branches
• Mit Remote-Repositories arbeiten - Lokal und Remote Origin, Tracking Branch
• Einführung der Platform Gitlab. Account einrichten. Remote-Repository anlegen.
• SSH Key auf Gitlab hinzufügen und verwenden.
• Tagging
• Branching - Neuen Branch erstellen, Zwischen Branches wechseln
• Merging, 3-Wege Merge, Merge-Konflikte lösen
• Workflow und Branching Modelle
• Forking Workflow, Pull Requests / Merge Requests
• Gitlab Flow vs Gitlab project forking workflow
• Beispiele zum Gitlab Flow
• Beispiel zur Verwendung des Gitlab Forking Workflows with Merge Requests
• Gitlab Projekte/Repositories verwalten
• Projekt-Mitglieder verwalten, Gruppen verwalten
• Arbeiten mit Tickets (Issues)
• Erstellung und Behandeln von Merge Requests
• Überblick zu (anderen) Git Hosting Plattformen
• Übersicht zu open source Self-hosted Plattformen
• Gitlab als Self-hosted Plattform betreiben
• Eigenes Gitlab aufsetzen (Demo mit Rasbperry Pi 4)
• Weitere Git Funktionalitäten
• Rebasing
• Squash Commits - Mehrere Commits zusammenführen
• Cherry picken
• Stashen/undo
• Blame/log
• Git Internals