Definition
Git ist ein verteiltes Versionskontrollsystem (Distributed Version Control System, DVCS), das 2005 von Linus Torvalds für die Entwicklung des Linux-Kernels geschrieben wurde. Es verfolgt Änderungen an Dateien über die Zeit, speichert den vollständigen Änderungsverlauf und ermöglicht mehreren Personen die gleichzeitige Arbeit an denselben Dateien.
Bedeutung
Git ist der De-facto-Standard für Versionskontrolle in der Softwareentwicklung. Praktisch jedes professionelle Entwicklungsprojekt — unabhängig von Programmiersprache oder Teamgröße — verwendet Git. Plattformen wie GitHub, GitLab und Bitbucket bauen auf Git auf und ergänzen es um Code-Reviews, CI/CD-Pipelines und Projektmanagement.
Funktionsweise
Git speichert den Zustand eines Projekts als Serie von Snapshots (Commits). Jeder Commit enthält eine kryptografische Prüfsumme, eine Referenz zum vorherigen Commit, die geänderten Dateien und eine Nachricht. Branches erlauben parallele Entwicklungsstränge: Ein Entwickler kann ein Feature in einem separaten Branch entwickeln, ohne den Hauptcode zu beeinflussen. Durch Merging werden Branches zusammengeführt. Da Git verteilt arbeitet, besitzt jeder Entwickler eine vollständige Kopie des Repositories — Arbeiten ist auch ohne Netzwerkverbindung möglich.
Praxisbeispiel
Ein Webentwicklungs-Team arbeitet an einem WordPress-Theme. Jedes Feature (neuer Block, Bug-Fix, Design-Anpassung) wird in einem eigenen Branch entwickelt. Vor dem Merge in den main-Branch prüft ein Kollege den Code im Pull Request. Nach dem Merge wird automatisch ein Deployment auf die Staging-Umgebung ausgelöst.
Verwandte Begriffe
- GitHub: Eine webbasierte Plattform für Git-Repositories, die Code-Hosting, Pull Requests und CI/CD-Funktionalität bietet.
- Branch: Ein eigenständiger Entwicklungsstrang in Git, der parallele Arbeit am Code ermöglicht, ohne den Hauptzweig zu beeinflussen.
- CI/CD (Continuous Integration/Continuous Deployment): Automatisierte Prozesse, die Code nach einem Git-Commit testen und auf Produktionsserver ausliefern.