Git-Grundlagen: Versionskontrolle für Einsteiger
Lerne die Grundlagen von Git kennen: Wie du ein Repository anlegst, Änderungen speicherst und deinen Code sicher versionierst.
Wenn du anfängst zu programmieren, merkst du schnell, dass du deinen Code immer wieder änderst, ausprobierst und manchmal wieder zurücknehmen möchtest. Genau hier kommt Git ins Spiel. Git ist das mit Abstand wichtigste Werkzeug zur Versionskontrolle und gehört heute zum Handwerkszeug jeder Entwicklerin und jedes Entwicklers. In diesem Beitrag steige ich mit dir Schritt für Schritt in die Grundlagen ein.
Was ist Versionskontrolle überhaupt?
Versionskontrolle bedeutet, dass jede Änderung an deinem Projekt festgehalten wird. Du kannst jederzeit nachschauen, wer wann was geändert hat, und bei Bedarf zu einem früheren Stand zurückkehren. Stell dir vor, du hättest für dein gesamtes Projekt eine unendliche Rückgängig-Funktion, die auch über Tage und Wochen hinweg funktioniert.
Git arbeitet dabei verteilt: Jede Kopie eines Projekts enthält die komplette Historie. Du brauchst also keinen zentralen Server, um lokal mit der Versionskontrolle zu arbeiten.
Git installieren und einrichten
Bevor du loslegst, solltest du Git installieren und dich einmalig vorstellen. Diese Angaben werden später bei jedem deiner Commits verwendet.
# Version prüfen, ob Git installiert ist
git --version
# Deinen Namen und deine E-Mail hinterlegen
git config --global user.name "Dein Name"
git config --global user.email "du@beispiel.de"Mit der Option --global gelten diese Einstellungen für alle deine Projekte. Du musst sie also nur einmal setzen.
Ein Repository anlegen
Ein Repository (kurz "Repo") ist der Ordner, in dem Git die Versionsgeschichte deines Projekts speichert. Du erstellst es mit einem einzigen Befehl.
# In den Projektordner wechseln
cd mein-projekt
# Git-Repository initialisieren
git initNach diesem Befehl liegt im Ordner ein verstecktes Verzeichnis .git. Dort speichert Git alle Informationen. Du musst diesen Ordner nie direkt anfassen.
Der Git-Workflow: Status, Add und Commit
Das Arbeiten mit Git folgt fast immer dem gleichen Ablauf. Zuerst schaust du dir an, was sich geändert hat. Dann wählst du die Änderungen aus, die du speichern möchtest. Schließlich speicherst du sie dauerhaft in einem Commit.
# Aktuellen Stand anzeigen
git status
# Eine einzelne Datei zum Commit vormerken
git add index.html
# Alle geänderten Dateien vormerken
git add .
# Die vorgemerkten Änderungen dauerhaft speichern
git commit -m "Startseite hinzugefügt"Der Zwischenschritt mit git add nennt sich Staging. Du legst sozusagen die Dateien in einen Korb, bevor du sie gemeinsam einpackst. So kannst du gezielt entscheiden, welche Änderungen zusammen in einen Commit gehören.
Die Historie ansehen
Sobald du ein paar Commits gemacht hast, möchtest du sicher wissen, was bisher passiert ist. Dafür gibt es git log.
# Vollständige Historie anzeigen
git log
# Kompakte Übersicht in einer Zeile pro Commit
git log --oneline
# Mit grafischer Darstellung der Verzweigungen
git log --oneline --graph --allJeder Commit bekommt einen eindeutigen Hash, eine lange Zeichenkette. Diesen brauchst du später, wenn du zu einem bestimmten Stand zurückkehren möchtest.
Änderungen rückgängig machen
Einer der größten Vorteile von Git ist, dass du Fehler korrigieren kannst. Hier ein paar typische Befehle für den Alltag.
# Änderungen an einer Datei verwerfen (vor dem add)
git restore index.html
# Eine vorgemerkte Datei wieder aus dem Staging nehmen
git restore --staged index.html
# Unterschiede zur letzten Version ansehen
git diffMit git diff siehst du Zeile für Zeile, was du verändert hast. Das ist besonders nützlich, bevor du einen Commit machst, damit du genau weißt, was du speicherst.
Fazit
Git wirkt am Anfang vielleicht etwas einschüchternd, aber im Kern brauchst du nur eine Handvoll Befehle: git init, git status, git add und git commit. Mit diesen Werkzeugen hast du deinen Code jederzeit unter Kontrolle und kannst ohne Angst experimentieren. Nimm dir die Zeit, diese Grundlagen in einem kleinen Übungsprojekt auszuprobieren. Sobald sie dir in Fleisch und Blut übergegangen sind, möchtest du nie wieder ohne Versionskontrolle arbeiten. Im nächsten Schritt lohnt es sich, einen Blick auf Branches und das Zusammenführen von Änderungen zu werfen.