Git-Befehle Spickzettel

Finden Sie schnell einen Git-Befehl per Stichwort (Branch, Commit, Rebase, Stash ...), nach Kategorie sortiert, mit einer Schaltfläche, um jeden Befehl direkt in Ihr Terminal zu kopieren.

Starten

git init
Initialisiert ein neues Git-Repository im aktuellen Ordner.
git clone <url>
Klont ein Remote-Repository in einen neuen lokalen Ordner.
git config --global user.name "Nom"
Legt den globalen Autorennamen für Commits fest.
git config --global user.email "email"
Legt die globale Autoren-E-Mail-Adresse für Commits fest.

Status & Verlauf

git status
Zeigt geänderte, hinzugefügte oder nicht verfolgte Dateien an.
git log
Zeigt den Commit-Verlauf an.
git log --oneline --graph --all
Kompakter Verlauf mit Branch-Graph.
git diff
Zeigt die noch nicht vorgemerkten Änderungen an.
git diff --staged
Zeigt die bereits vorgemerkten (Staged) Änderungen an.
git show <commit>
Zeigt die Details eines bestimmten Commits an.

Bearbeiten

git add <fichier>
Fügt eine Datei zum Staging-Bereich hinzu.
git add -A
Fügt alle geänderten, hinzugefügten und gelöschten Dateien hinzu.
git commit -m "message"
Erstellt einen Commit mit den vorgemerkten Dateien.
git commit --amend
Ändert den letzten Commit (Nachricht und/oder Inhalt).
git restore <fichier>
Verwirft die nicht vorgemerkten Änderungen einer Datei.
git restore --staged <fichier>
Nimmt eine Datei aus dem Staging-Bereich, ohne die Änderungen zu verlieren.
git rm <fichier>
Löscht eine Datei und merkt die Löschung vor.

Branches

git branch
Listet die lokalen Branches auf.
git branch <nom>
Erstellt einen neuen Branch.
git switch <branche>
Wechselt den aktiven Branch.
git switch -c <branche>
Erstellt einen Branch und wechselt sofort dorthin.
git branch -d <branche>
Löscht einen bereits zusammengeführten lokalen Branch.
git branch -D <branche>
Löscht einen lokalen Branch erzwungen, auch wenn er nicht zusammengeführt ist.

Merge & Rebase

git merge <branche>
Führt einen Branch in den aktuellen Branch zusammen.
git rebase <branche>
Wendet die Commits des aktuellen Branches auf einer anderen Basis erneut an.
git rebase -i HEAD~n
Interaktiver Rebase der letzten n Commits (neu ordnen, zusammenfassen ...).
git cherry-pick <commit>
Wendet einen bestimmten Commit auf den aktuellen Branch an.

Remote

git remote -v
Listet die konfigurierten Remote-Repositories auf.
git fetch
Holt die Remote-Referenzen, ohne sie zusammenzuführen.
git pull
Holt die Remote-Änderungen und führt sie zusammen.
git push
Sendet die lokalen Commits an das Remote-Repository.
git push -u origin <branche>
Sendet einen Branch und verknüpft ihn als Tracking-Branch.
git push --force-with-lease
Erzwingt das Senden auf sicherere Weise als ein normales --force.

Abbrechen

git reset --soft HEAD~1
Macht den letzten Commit rückgängig und behält die Änderungen vorgemerkt.
git reset --mixed HEAD~1
Macht den letzten Commit rückgängig und behält die Änderungen nicht vorgemerkt.
git reset --hard HEAD~1
Macht den letzten Commit rückgängig und verwirft seine Änderungen endgültig.
git revert <commit>
Erstellt einen neuen Commit, der die Wirkung eines früheren Commits aufhebt.

Ablage (Stash)

git stash
Legt die aktuellen Änderungen vorübergehend beiseite.
git stash pop
Wendet den letzten Stash erneut an und entfernt ihn aus der Liste.
git stash list
Listet die gespeicherten Stashes auf.

Beschriftungen

git tag
Listet die vorhandenen Tags auf.
git tag -a v1.0.0 -m "message"
Erstellt ein annotiertes Tag.
git push origin --tags
Sendet alle lokalen Tags an das Remote-Repository.

So funktioniert es

Rund vierzig gängige Git-Befehle sind nach Kategorien geordnet (Einstieg, Status und Verlauf, Branches, Merge und Rebase, Remote, Rückgängig machen, Stash, Tags). Geben Sie ein Stichwort in die Suchleiste ein — einen Befehlsnamen (rebase), ein Konzept („rückgängig“, „zusammenführen“) oder eine Kategorie —, um die Liste live zu filtern, und klicken Sie dann neben dem gewünschten Befehl auf „Kopieren“, um ihn direkt in Ihr Terminal einzufügen.

Was ist der Unterschied zwischen git fetch und git pull?

git fetch lädt die neuen Referenzen aus dem Remote-Repository herunter, ohne Ihren lokalen Branch zu verändern, sodass Sie die Änderungen in Ruhe prüfen können, bevor Sie sie übernehmen. git pull tut dasselbe und führt diese Änderungen anschließend automatisch in Ihren aktuellen Branch zusammen (oder per Rebase, je nach Konfiguration).

Wann verwende ich git reset statt git revert?

Verwenden Sie git reset, um den Verlauf eines noch nicht geteilten Branches umzuschreiben (oder mit Vorsicht und in Absprache mit dem Team), und git revert, um einen bereits gepushten und möglicherweise von anderen genutzten Commit sauber rückgängig zu machen, da es einen neuen Umkehr-Commit hinzufügt, ohne den bestehenden Verlauf umzuschreiben.

Dieser Spickzettel ist vollständig statisch und funktioniert nach dem Laden der Seite offline: Es werden keine Daten an einen Server gesendet, auch nicht Ihre Suche.