- Einführung in GitLab
- Überblick über GitLab: Funktionen, Vorteile gegenüber anderen Plattformen, Einrichtung eines Accounts.
- Grundlagen der Versionierung mit Git: Repositories erstellen und klonen, Commits, Branches, Merges.
- Effektive Nutzung von GitLab für die Zusammenarbeit
- Merge Requests (MRs) und Code Reviews: Best Practices, Durchführung effektiver Code Reviews.
- Issues und Milestones: Verwaltung von Aufgaben, Priorisierung und Tracking von Fortschritt.
- GitLab CI/CD (Continuous Integration/Continuous Deployment)
- Aufbau einer CI/CD-Pipeline: Konfiguration, .gitlab-ci.yml, Runner.
- Automatisierte Tests und Deployment: Integrationstests, Deployment-Strategien.
- Projektmanagement in GitLab
- Planung und Überwachung von Projekten: Nutzung von GitLab für agile Projektmanagement-Methoden.
- Effektive Kommunikation und Dokumentation: Einsatz von GitLab für die Projektkommunikation und -dokumentation.
- Arbeiten mit großen Repositories
- Git LFS (Large File Storage): Verwendung von Git LFS für den Umgang mit großen Dateien.
- Repository-Management: Tipps zur Optimierung der Performance und Handhabung von großen Repositories.
- Fortgeschrittene Branching-Strategien
- Branching-Modelle: Feature Branches, Git Flow vs. GitHub Flow.
- Konfliktmanagement: Auflösen von Merge-Konflikten, Rebase vs. Merge.
- Automatisierung mit GitLab
- GitLab Webhooks und APIs: Automatisierung von Workflows, Integration externer Tools.
- Custom GitLab Runners: Einrichtung und Verwaltung eigener Runner für spezielle Anforderungen.
- Monitoring und Performance-Analyse
- GitLab Monitoring-Tools: Überwachung der Pipeline-Leistung, Analyse von Logs.
- Performance-Optimierung: Best Practices zur Beschleunigung der CI/CD-Pipelines.
- Best Practices für die Codeorganisation und -modularisierung
- Modulare Codebasis: Aufteilung des Codes in wiederverwendbare Module, Submodules in Git.
- Codequalität und -wartung: Code-Review-Praktiken, Refactoring und technische Schulden.
- Anpassung und Nutzung der GitLab Benutzeroberfläche
- Anpassung des Dashboards: Personalisierung der GitLab-Oberfläche für effizienteres Arbeiten.
- Erweiterte Nutzung der Such- und Filterfunktionen: Effizientes Auffinden von Projekten, Issues und MRs.
LernzieleDas Ziel des Seminars ist es, Entwicklern eine umfassende Einführung in GitLab zu bieten, indem es praktische Anwendungen, effektive Zusammenarbeitstechniken und fortgeschrittene Funktionen vermittelt. Teilnehmer lernen, wie sie GitLab effizient für Versionskontrolle, CI/CD, Projektmanagement und Teamkollaboration nutzen können. Zudem sollen sie Fähigkeiten erwerben, um ihre Arbeitsabläufe durch Automatisierung zu optimieren, die Codequalität zu verbessern und Projekte effektiver zu managen. Das Seminar strebt danach, den Teilnehmern das notwendige Wissen und die Werkzeuge an die Hand zu geben, um GitLab als zentrale Plattform für die Softwareentwicklung in ihren Projekten einzusetzen.
ZielgruppenDas Seminar richtet sich an Softwareentwickler, DevOps-Ingenieure und Projektmanager, die in ihrem Arbeitsalltag mit der Softwareentwicklung oder -verwaltung betraut sind. Idealerweise sollten die Teilnehmer grundlegende Kenntnisse in der Softwareentwicklung und im Umgang mit Versionskontrollsystemen haben. Ein grundlegendes Verständnis von Git ist vorteilhaft, um die Themen rund um GitLab effektiv nachvollziehen und anwenden zu können.