Grundkonzepte
Dezentrale Versionsverwaltung
Datenspeicher: Workspace, Staging, Repository, Remote Tracking Branches, Remote Repositories, Stash, Branches
Konzept der Git-Hash-Werte
Verweise auf Commits und anderen Referenzen
Git-Werkzeuge
Kommandozeilenwerkzeuge (git.exe/git u.a.)
GUI-Werkzeuge wie z.B. Visual Studio, VSCode, SourceTree und GitHub Desktop
Einstieg in Git
Konfiguration und Grundoperationen für die lokale Arbeit
Repositories anlegen
Repositories klonen
Staging und Commits
Dateien von der Versionierung ausschließen (.gitignore)
Statusinformationen und Versionsgeschichte anzeigen
Änderungen verwerfen / Undo / Reset
Tagging
Stashing
Suche im Repository
Branching und Merging
Branch erstellen
Arbeiten im Branch
Merging, Rebasing, Cherry-Picking
Umgang mit Konflikten (Konfliktlösung, Abbrechen)
Werkzeuge für die Konfliktbearbeiteung
Branches löschen
Aufbauwissen
Dezentrales Arbeiten mit Git
Arbeiten mit Remotes
Austausch zwischen Repositories (Fetch, Pull und Push)
Typische Workflows im Projektalltag
Gemeinsames Arbeiten auf einen Branch
Mit Feature-Branches und Hotfix-Branches entwickeln
Ein Release erstellen
Verschiedene Release-Branching-Strategien
Best Practices
Das Dateisystem aufräumen
Grenzen von Git
Optional: Github oder Gitlab
Optional: Git in Azure DevOps (Team Foundation Server (TFS), Visual Studio Team Services (VSTS)