Git und GitLab - Bausteine für CI/CD
(TDE-GITA)
In diesem Kurs wird Ihnen das Grundverständnis für Versionskontrollsysteme mit Hilfe des populärsten Versionsverwaltungstool Git nahegelegt. Dabei wird nicht nur das Tool Git betrachtet, sondern auch die Schnittstelle zur Plattform GitLab. So werden Sie im Kurs eine eigene GitLab-Plattform in Betrieb nehmen und für den täglichen Einsatz vorbereiten. Ziel des Kurses ist es, Ihnen die Möglichkeiten von Git aufzuzeigen und das Installieren und Betreiben einer Plattform wie GitLab näher zu bringen. Das theoretisch vermittelte Wissen wird in den Übungen gleich praxisnah umgesetzt. Abgerundet wird der Kurs durch einen Ausblick in die Welt von CI/CD & DevOps sowie auf alternativ nutzbare Tools und deren Positionierung.
Kursinhalt
- Einführung in Git
- Git-Konzepte
- Einsatz von Git unter Windows und Linux
- Lokale und remote Repositories
- Betrieb von Git-Umgebungen
- Einführung in GitLab
- Vergleich zwischen GitLab, BitBucket, GitHub
- Installation & Betrieb von GitLab
- Bug & Issue Tracking
- GitLab Workflows und Runner
- Ausblick CI/CD & DevOps
Zielgruppe
Dieses Training richtet sich an Anwendungsentwickler, Designer, Betriebsteams und Plattform-Architekten, die einen einfachen und schnellen Einstieg in die Versionsverwaltung mit Git und GitLab bekommen möchten.
Voraussetzungen
Die Bereitschaft, sich mit den Themen Git und GitLab technisch auseinanderzusetzen wird vorausgesetzt. Grundlegende IT-Kenntnisse sind erforderlich.
Inhaltsverzeichnis
1 Git Überblick
- 1.1 Versionsverwaltung
- 1.2 Vorstellung von Git
- 1.2.1 Wie funktioniert Git?
- 1.2.2 Bestandteile eines Commits
- 1.2.3 Commit Message
- 1.2.4 Verbreitung von Git
- 1.2.5 Alternativen zu Git und Abgrenzungen
- 1.3 Installation unter Linux
- 1.4 Installation unter Windows
- 1.5 Architektur von Git
- 1.5.1 Git-States
- 1.6 Arbeiten mit Git
- 1.6.1 Erste Schritte mit Git
- 1.6.2 Grundbefehle
- 1.6.3 Git-Ignore-File
- 1.6.4 Arbeiten mit der Historie
- 1.6.5 Arbeiten mit Tags
- 1.6.6 Auschecken von Commits/Tags
- 1.6.7 Verwerfen von Änderungen
- 1.6.8 Referenz Historie
2 Git Branches
- 2.1 Was ist ein Branch?
- 2.1.1 GitFlow-Konzept
- 2.2 Arbeiten mit Branches
- 2.2.1 Wechseln zwischen Branches
- 2.2.2 Löschen von Branches
- 2.3 Merging
- 2.3.1 3-Wege-Merge
- 2.3.2 Squashing bei Merge
- 2.4 Rebase
- 2.5 Cherry-Pick
- 2.6 Lokale Konflikte
- 2.6.1 Wechseln zwischen Branches
- 2.6.2 Konflikte bei Merge
3 GitLab
- 3.1 Remote Repositories
- 3.2 GitLab und Alternativen
- 3.2.1 Community Edition
- 3.2.2 GitHub
- 3.2.3 BitBucket
- 3.2.4 Unterschiede der Remote-Plattformen
- 3.3 Administration von GitLab
- 3.3.1 Aufsetzen eines lokalen GitLab-Servers
- 3.3.2 GitLab Landing Page
- 3.4 Rollenmodell bei GitLab
- 3.5 Authentisierung
- 3.5.1 Access Tokens
- 3.5.2 SSH-Keys
4 Git Remote
- 4.1 Verknüpfen eines Remote Repositories
- 4.2 Arbeiten mit Remote
- 4.3 Lokale und Remote Branches
- 4.4 Git Clone
- 4.5 Git Fetch
- 4.6 Git Pull
- 4.7 Git Push
- 4.7.1 Konflikte beim Push
5 Arbeiten mit GitLab
- 5.1 Merge Requests
- 5.1.1 Anlegen eines Merge Requests
- 5.2 Issue Tracking
- 5.2.1 Planung mit Issues
- 5.3 Wiki
- 5.4 Forking
- 5.5 Activities im GitLab
6 Ausblick DevOps und CI/CD mit Git
- 6.1 GitLab für DevOps
- 6.2 Continuous Integration
- 6.3 CI bei GitLab
A Visual Studio Code
- A.1 Was ist Visual Studio Code?
- A.2 Gitlab und VSC
- A.3 Die Oberfläche von VS Code
- A.3.1 Activity Bar und Sidebar
- A.3.2 Neue Dateien in VS Code anlegen
- A.3.3 Einen Ordner hinzufügen
- A.3.4 Das Search Tool
- A.4 Versionskontrolle
- A.4.1 Git in Visual Studio Code nutzen
- A.4.2 Ein Remoterepository in VS Code klonen
- A.4.3 Ein lokales Git-Repository anlegen
- A.4.4 GitLens
B Abkürzungsverzeichnis
C Befehle