Jedes Jahr verlieren Programmieranfänger Stunden an Arbeit, weil eine Datei versehentlich überschrieben oder ein funktionierender Code-Stand nicht mehr auffindbar ist. Ein einziger falscher Klick, ein vergessenes Backup, und wochenlange Arbeit ist weg. Genau dieses Problem löst Git seit über zwei Jahrzehnten für Millionen von Entwicklerinnen und Entwicklern weltweit.
Wer sich mit Git für Einsteiger beschäftigt, stößt schnell auf zwei Begriffe, die oft verwechselt werden: Git und GitHub. Dieser Artikel erklärt beide Konzepte von Grund auf, zeigt die wichtigsten Befehle mit praktischen Beispielen und geht auf typische Fehler ein, die Anfängerinnen und Anfänger am häufigsten machen.
Inhaltsverzeichnis
Key Takeaways
- Git ist ein Versionskontrollsystem, das Änderungen an Dateien nachverfolgt; GitHub ist eine Online-Plattform zum Hosten und Teilen von Git-Repositories.
- Die wichtigsten Grundbegriffe für Git für Einsteiger sind Repository, Commit, Branch, Push, Pull und Merge.
- Mit nur fünf Befehlen (git init, git clone, git add, git commit, git push) lässt sich bereits ein kompletter Arbeitsablauf abbilden.
- Die häufigsten Anfängerfehler betreffen vergessenes git add, unklare Commit-Messages, fehlende .gitignore-Dateien und direktes Pushen auf den main-Branch.
- Offizielle Dokumentationen von GitHub und Microsoft Learn bieten kostenlose, praxisnahe Einstiegspfade für den Einstieg in Versionskontrolle.
Was ist Git und wie funktioniert Versionskontrolle
Git ist ein kostenloses, quelloffenes Versionskontrollsystem. Es speichert nicht nur die aktuelle Version einer Datei, sondern die gesamte Historie aller Änderungen. Jeder Zwischenstand bleibt dauerhaft erhalten und kann bei Bedarf wiederhergestellt werden.
Anders als eine einfache Kopie auf dem Desktop erfasst Git präzise, was sich zwischen zwei Zeitpunkten verändert hat, Zeile für Zeile. Das macht es möglich, Fehler rückgängig zu machen, verschiedene Entwicklungsstände parallel zu verwalten und im Team gemeinsam an einem Projekt zu arbeiten, ohne sich gegenseitig Dateien zu überschreiben.
Für den Einstieg in Git für Einsteiger lohnt es sich, drei Grundbegriffe zu verinnerlichen, bevor die ersten Befehle folgen:
Repository (kurz: Repo)
Ein Repository ist der Projektordner, den Git überwacht. Es enthält alle Dateien des Projekts sowie den vollständigen Änderungsverlauf in einem versteckten Unterordner namens .git.
Commit
Ein Commit ist ein gespeicherter Schnappschuss des Projekts zu einem bestimmten Zeitpunkt. Jeder Commit erhält eine eindeutige Kennung und eine Beschreibung (Commit-Message), die erklärt, was verändert wurde.
Branch
Ein Branch ist ein paralleler Entwicklungspfad. Der Hauptzweig heißt meist main. Neue Features werden häufig in einem eigenen Branch entwickelt, ohne den stabilen Hauptcode zu gefährden.
„Git verwandelt Chaos in nachvollziehbare Geschichte, jede Änderung wird zu einem Kapitel, das man später wieder aufschlagen kann."
Was ist GitHub und wie unterscheidet es sich von Git
Ein häufiges Missverständnis bei Git für Einsteiger-Kursen ist die Annahme, Git und GitHub seien dasselbe. Das ist nicht der Fall.
Git ist die Software, die lokal auf dem eigenen Rechner läuft und die Versionsverwaltung übernimmt. GitHub hingegen ist eine Online-Plattform, auf der Git-Repositories gehostet, geteilt und gemeinsam bearbeitet werden können [2]. Man könnte Git mit der Grammatik einer Sprache vergleichen und GitHub mit einer öffentlichen Bibliothek, in der Texte in dieser Sprache veröffentlicht und diskutiert werden.
Die folgende Tabelle fasst die wichtigsten Unterschiede zusammen:
| Merkmal | Git | GitHub |
|---|---|---|
| Art | Versionskontrollsystem (Software) | Hosting-Plattform im Web |
| Installation | Lokal auf dem Rechner | Kein Download nötig, läuft im Browser |
| Zusammenarbeit | Nur lokal, ohne Netzwerk möglich | Ermöglicht Teamarbeit über das Internet |
| Zentrale Funktionen | init, add, commit, branch, merge | Pull Requests, Issues, Projekttafeln |
| Kosten | Kostenlos und open source | Kostenlos mit optionalen Bezahlplänen |
GitHub erweitert Git um zusätzliche Werkzeuge wie Pull Requests, Issue-Tracking und Projektmanagement-Funktionen, die besonders für Teamarbeit wertvoll sind [1]. Alternativen wie GitLab oder Bitbucket funktionieren nach einem ähnlichen Prinzip, GitHub ist jedoch die weltweit meistgenutzte Plattform dieser Art.
Die wichtigsten Grundbegriffe: Repository, Commit, Branch, Push, Pull und Merge
Bevor die ersten Befehle ausgeführt werden, hilft ein kompaktes Vokabular. Diese Begriffe bilden das Fundament für Git für Einsteiger und tauchen in praktisch jedem Tutorial wieder auf.
- Repository: Der Projektordner mit vollständiger Änderungshistorie.
- Commit: Ein gespeicherter Zwischenstand mit Beschreibung.
- Branch: Ein separater Entwicklungspfad, meist für neue Features.
- Push: Lokale Commits werden zu einem entfernten Repository (z. B. auf GitHub) hochgeladen.
- Pull: Änderungen aus einem entfernten Repository werden auf den eigenen Rechner heruntergeladen.
- Merge: Zwei Branches werden zusammengeführt, sodass ihre Änderungen kombiniert werden.
- Clone: Eine vollständige Kopie eines bestehenden Repositories wird lokal erstellt.
Ein hilfreiches Bild: Stell dir das Repository als ein Buch vor, jeden Commit als ein neues Kapitel, Branches als alternative Handlungsstränge und Merge als den Moment, in dem zwei Handlungsstränge wieder zu einer Geschichte zusammenfinden.
Erste Schritte mit Git: Die wichtigsten Befehle im Detail
Der praktische Einstieg beginnt in der Kommandozeile (Terminal). Wer lieber eine grafische Oberfläche nutzt, kann alternativ GitHub Desktop verwenden, das viele dieser Schritte per Klick abbildet [3][6]. Die folgenden fünf Befehle reichen für den ersten kompletten Arbeitsablauf.
git init, Ein neues Repository erstellen
git init
Dieser Befehl verwandelt einen normalen Ordner in ein Git-Repository. Es entsteht ein versteckter .git-Ordner, der ab jetzt alle Änderungen protokolliert. Ideal für ein neues, lokal begonnenes Projekt.
git clone, Ein bestehendes Repository herunterladen
git clone https://github.com/nutzername/projektname.git
Mit git clone wird eine vollständige Kopie eines Repositories von GitHub auf den eigenen Rechner geladen, inklusive der kompletten Historie. Das ist der übliche Einstieg, wenn man an einem bereits bestehenden Projekt mitarbeiten möchte.
git add, Änderungen zur Staging Area hinzufügen
git add datei.txt
Oder für alle geänderten Dateien:
git add .
Dieser Schritt markiert Dateien für den nächsten Commit. Git unterscheidet bewusst zwischen „geänderte Datei" und „für den Commit vorgesehene Datei", dieser Zwischenschritt heißt Staging Area.
git commit, Einen Schnappschuss speichern
git commit -m "Startseite mit Navigation hinzugefügt"
Der Commit speichert den aktuellen Stand dauerhaft in der Historie. Die Nachricht nach -m sollte kurz und präzise beschreiben, was verändert wurde.
git push, Änderungen zu GitHub hochladen
git push origin main
Dieser Befehl überträgt alle lokalen Commits zum entfernten Repository auf GitHub. Erst nach dem Push sind die Änderungen für Teammitglieder oder die Öffentlichkeit sichtbar.
Ein typischer Ablauf für ein kleines Projekt sieht damit so aus:
git init, Projekt initialisieren- Datei bearbeiten oder erstellen
git add ., Änderungen vormerkengit commit -m "Beschreibung", Änderungen speicherngit push origin main, Änderungen hochladen
Diese fünf Schritte bilden das Herzstück jedes Git für Einsteiger-Workflows und werden im Laufe der Zeit fast automatisch beherrscht.
Häufige Einsteigerfehler bei Git und GitHub vermeiden
Selbst mit der besten Anleitung passieren am Anfang typische Stolperer. Wer diese Fehlerquellen kennt, spart sich viel Frustration.
Vergessenes git add
Eine der häufigsten Fehlermeldungen entsteht, wenn eine Datei geändert, aber nicht mit git add zum Commit hinzugefügt wurde. Git kann nur Änderungen speichern, die es kennt. Ein Blick auf git status zeigt zuverlässig, welche Dateien noch nicht vorgemerkt sind.
Unklare oder fehlende Commit-Messages
Eine Commit-Message wie „Update" oder „fix" hilft niemandem, auch nicht dem eigenen zukünftigen Ich. Besser sind kurze, aktive Beschreibungen wie „Login-Formular validiert" oder „Tippfehler in README korrigiert".
Merge-Konflikte
Wenn zwei Personen dieselbe Codezeile unterschiedlich verändert haben, kann Git die Änderungen nicht automatisch zusammenführen. Es entsteht ein Merge-Konflikt, den Git in der betroffenen Datei markiert. Die Lösung: Die markierten Stellen manuell durchsehen, die gewünschte Version behalten und anschließend erneut committen.
Vergessene .gitignore-Datei
Ohne eine .gitignore-Datei landen oft unnötige Dateien im Repository, etwa temporäre Dateien, Zugangsdaten oder große Build-Ordner. Eine einfache .gitignore-Datei mit Einträgen wie node_modules/ oder .env verhindert das zuverlässig.
Direktes Pushen auf main
Gerade in Teamprojekten ist es riskant, Änderungen direkt auf den main-Branch zu pushen. Üblich ist stattdessen, einen eigenen Feature-Branch zu erstellen und die Änderungen über einen Pull Request auf GitHub prüfen zu lassen, bevor sie in main landen.
Die folgende Übersicht fasst die Fehler und passenden Lösungen zusammen:
| Fehler | Ursache | Lösung |
|---|---|---|
| Änderung fehlt im Commit | git add vergessen | git status prüfen, dann git add |
| Unklare Historie | Schwache Commit-Message | Kurze, präzise Beschreibung verwenden |
| Merge-Konflikt | Gleiche Zeile parallel geändert | Konfliktmarkierungen manuell auflösen |
| Unnötige Dateien im Repo | Fehlende .gitignore | .gitignore frühzeitig anlegen |
| Instabiler Hauptzweig | Direktes Pushen auf main | Feature-Branch und Pull Request nutzen |
Fazit: Der nächste Schritt in der eigenen Git-Lernreise
Versionskontrolle wirkt am Anfang abstrakt, wird aber mit jeder Übung selbstverständlicher. Der Schlüssel zum Verständnis von Git für Einsteiger liegt nicht im Auswendiglernen aller Befehle, sondern im Verinnerlichen des grundlegenden Ablaufs: Änderung machen, mit git add vormerken, mit git commit speichern und mit git push teilen.
Wer nach den ersten Git-Schritten tiefer in die Webentwicklung einsteigen möchte, findet im Leitfaden Erste Schritte als Backend-Entwickler weiterführende Grundlagen zu PHP, Node.js und MySQL.
Als nächster Schritt empfiehlt sich, ein kleines, unwichtiges Testprojekt anzulegen und dort risikofrei zu experimentieren, Branches erstellen, absichtlich einen Merge-Konflikt provozieren und wieder auflösen. Wer diese Übungen einmal durchlaufen hat, verliert die Angst vor der Kommandozeile schnell. Offizielle, kostenlose Lernpfade wie die interaktiven GitHub-Skills-Module bieten dafür eine strukturierte, praxisnahe Umgebung [1][5].
References
[1] Introduction To Github – https://github.com/skills/introduction-to-github
[2] Get Started – https://docs.github.com/de/get-started
[3] Getting Started With Git – https://docs.github.com/de/get-started/learning-to-code/getting-started-with-git
[5] Github Foundations – https://learn.microsoft.com/de-de/training/paths/github-foundations/
[6] Get Started Easier With Github Desktop 2 2 – https://github.blog/news-insights/product-news/get-started-easier-with-github-desktop-2-2/
Häufige Fragen
Was ist der Unterschied zwischen Git und GitHub?
Git ist die lokal installierte Software zur Versionsverwaltung, GitHub ist eine Online-Plattform zum Hosten, Teilen und gemeinsamen Bearbeiten von Git-Repositories.
Welche fünf Git-Befehle reichen für einen ersten Workflow?
git init, git clone, git add, git commit und git push bilden zusammen einen kompletten Arbeitsablauf vom Anlegen eines Repositories bis zum Hochladen der Änderungen.
Was ist ein Merge-Konflikt und wie löst man ihn?
Ein Merge-Konflikt entsteht, wenn zwei Personen dieselbe Codezeile unterschiedlich geändert haben; Git markiert die betroffenen Stellen, die dann manuell durchgesehen und nach Auflösung erneut committet werden.
Warum sollte man nicht direkt auf den main-Branch pushen?
Direktes Pushen auf main ist riskant, weil ungetestete Änderungen sofort den Hauptzweig destabilisieren können; üblich ist stattdessen ein Feature-Branch mit Pull Request zur Prüfung.








