Git-Spickzettel: Unterschied zwischen den Versionen

Aus Tuxipedia
Die Seite wurde neu angelegt: „= Git – Spickzettel für den Alltag = Ich bin vergesslich! Leider. 🥲 Daher ein kurzer Überblick über die wichtigsten Git-Befehle für kleine Projekte (z. B. meinen Chatti-Client, Tuxi-Skripte, Wiki-Helferlein). Fokus: „Ich ändere manchmal Code, will ihn sauber committen und zu GitHub schieben – wie war das nochmal?“ Hier geht's um den Umgang mit einem laufenden Git. Zum Einrichten ist ein SSH-Kanal nötig. Zum Umgang mit SSH gibt's eine …“
 
(kein Unterschied)

Aktuelle Version vom 7. Dezember 2025, 18:26 Uhr

Git – Spickzettel für den Alltag

Ich bin vergesslich! Leider. 🥲 Daher ein kurzer Überblick über die wichtigsten Git-Befehle für kleine Projekte (z. B. meinen Chatti-Client, Tuxi-Skripte, Wiki-Helferlein). Fokus: „Ich ändere manchmal Code, will ihn sauber committen und zu GitHub schieben – wie war das nochmal?“

Hier geht's um den Umgang mit einem laufenden Git. Zum Einrichten ist ein SSH-Kanal nötig. Zum Umgang mit SSH gibt's eine eigene SSH-Seite. Die enthält auch einen Abschnitt über SSH in Verbindung mit dem GitHub.

Grundbegriffe (in sehr kurz)

Repository (Repo)
Projektordner mit Git-Historie. Enthält ein Unterverzeichnis .git.
Commit
„Schnappschuss“ des Projektzustands mit Nachricht. Mehrere Commits bilden die Historie.
Branch
„Arbeitslinie“. Meist heißt der Hauptbranch main (früher oft master).
Remote
Entferntes Repo (z. B. auf GitHub). Standardname meistens origin.

Typischer Workflow nach Code-Änderungen

1. Status prüfen

git status

Zeigt:

  • welche Dateien geändert wurden,
  • ob etwas zum Commit vorgemerkt ist,
  • auf welchem Branch du bist.

2. Änderungen für Commit vormerken (stagen)

Alles (schnell und bequem):

git add .

Oder gezielt (empfohlen bei größeren Projekten):

git add pfad/zur/datei.py
git add docs/README.md

3. Commit erstellen

git commit -m "Kurz und sinnvoll beschreiben, was sich geändert hat"

Beispiele:

  • git commit -m "fix: Timeout im Doctor reduziert"
  • git commit -m "docs: Tuxipedia-Artikel verlinkt"

4. Änderungen nach GitHub pushen

Wenn der Branch schon einen Remote-Branch hat (z. B. main → origin/main):

git push

Falls Git meckert, dass kein Upstream gesetzt ist, einmalig:

git branch --show-current      # aktuellen Branch anzeigen (z. B. main)
git push -u origin main        # Branch 'main' mit origin verknüpfen

Danach reicht wieder einfach git push.

Änderungen ansehen

Welche Dateien sind geändert?

git status

Inhaltliche Unterschiede anzeigen (Diff)

Alle Änderungen im Arbeitsverzeichnis:

git diff

Nur Änderungen in bereits gestagten Dateien:

git diff --cached

Diff für eine Datei:

git diff pfad/zur/datei.py

Änderungen zurücknehmen (vorsichtig)

Datei aus dem Index (Staging) zurückholen

Falls man sich beim git add vertan hat:

git restore --staged pfad/zur/datei.py

Änderungen bleiben in der Datei, sind nur nicht mehr „zum Commit vorgemerkt“.

Lokale Änderungen an einer Datei verwerfen

Achtung: Nicht rückgängig zu machen, wenn man keinen Backup hat.

git restore pfad/zur/datei.py

Die Datei wird auf den Stand des letzten Commits zurückgesetzt.

Remote & Aktualisieren (pull)

Änderungen von GitHub holen und einspielen

git pull

Üblicher Ablauf:

  • Git holt neue Commits von origin
  • ggf. werden sie in deinen aktuellen Branch gemerged

Neues Projekt von GitHub klonen

git clone https://github.com/USER/REPO.git

Optional mit Zielordner:

git clone https://github.com/USER/REPO.git mein-ordner

Branches (nur das Nötigste)

Neuen Branch erstellen und wechseln

git switch -c feature/irgendwas

Auf bestehenden Branch wechseln

git switch main

(Alternativ geht auch noch git checkout, aber git switch ist moderner und klarer.)

Bei Konflikten (nur ganz grob)

Konflikte entstehen, wenn git pull oder ein Merge Änderungen zusammenführen soll, die sich widersprechen.

Typischer Ablauf:

  1. git pull ausführen
  2. Git meldet „merge conflict“ und kennzeichnet Stellen im Code mit <<<<<<< und >>>>>>>
  3. Datei im Editor öffnen, Konfliktstellen manuell auflösen
  4. gelöste Dateien wieder vormerken:
git add pfad/zur/datei.py
  1. Merge abschließen:
git commit

Falls es zu kompliziert wird: lieber kurz pausieren, nachdenken, diff ansehen – oder Rücksprache mit dem zukünftigen Ich halten. ;)

Minimal-Workflow zum Merken

Der „Minimal-Spickzettel“, wenn du nur kurz was ändern willst:

git status
git add .
git commit -m "kurze Beschreibung"
git push

Damit erledigst du 95 % der alltäglichen Git-Aufgaben.