Files
ClaudeDo/src/ClaudeDo.Ui/Assets/CheatSheets/git.md
T
mika kuns 0db9fadee9 feat(ui): Cheat-Sheet-Fenster im Hilfe-Menue
Sechs Markdown-Sheets (git, Conventional Commits, Claude CLI, Claude-Config,
dotnet CLI, PowerShell) als EmbeddedResource, gerendert im modelosen, per
Topmost anpinnbaren CheatSheetsWindow. MarkdownView bekommt dafuer das Opt-in
CommandRows: `befehl` - beschreibung wird zu Mono-Chip + Copy-Button, jede
##-Sektion landet in einem Expander. Enthaelt ausserdem: Mission Control
wird beim Oeffnen aus dem Minimiert-Zustand geholt, nicht nur aktiviert.
2026-09-07 08:17:37 +02:00

3.5 KiB

Git

Start

  • git clone <url> — Repository klonen
  • git init — neues Repository anlegen
  • git remote add origin <url> — Remote verbinden

Stand ansehen

  • git status -sb — Kurzstatus mit Branch-Zeile
  • git diff — nicht gestagete Änderungen
  • git diff --staged — gestagete Änderungen
  • git diff main...HEAD — alles, was dieser Branch gegenüber main bringt
  • git diff --stat — nur Datei- und Zeilenzähler
  • git log --oneline --graph --decorate -20 — kompakter Verlauf
  • git log -p -- <pfad> — Verlauf einer Datei mit Diffs
  • git show <commit> — ein Commit im Detail

Branch

  • git switch <branch> — Branch wechseln
  • git switch -c <name> — Branch anlegen und wechseln
  • git switch - — zurück zum vorherigen Branch
  • git branch -vv — Branches mit Upstream und letztem Commit
  • git branch -d <name> — gemergten Branch löschen (-D erzwingt)

Committen

  • git add <pfad> — Änderungen stagen
  • git add -p — Änderungen hunk-weise stagen
  • git commit -m "<text>" — gestagete Änderungen committen
  • git commit -- <pfad> — nur diese Pfade committen
  • git commit --amend --no-edit — letzten Commit um die Staging-Area erweitern
  • git commit --fixup <commit> — Fixup für späteres Autosquash

Remote

  • git fetch --all --prune — alles holen, gelöschte Remote-Branches aufräumen
  • git pull --rebase — holen und eigene Commits obendrauf setzen
  • git push -u origin <name> — pushen und Upstream setzen
  • git push --force-with-lease — sicheres Force-Push, nie plain --force

Rebase und Merge

  • git rebase main — Branch auf aktuellen main setzen
  • git rebase -i --autosquash main — interaktiv aufräumen
  • git rebase --continue — nach gelöstem Konflikt weiter
  • git rebase --abort — Rebase abbrechen, Ausgangszustand zurück
  • git merge --no-ff <branch> — Merge-Commit erzwingen
  • git merge --abort — laufenden Merge abbrechen
  • git cherry-pick <commit> — einzelnen Commit übernehmen

Konflikte

  • git diff --name-only --diff-filter=U — konfliktbehaftete Dateien
  • git checkout --ours <pfad> — eigene Seite übernehmen
  • git checkout --theirs <pfad> — fremde Seite übernehmen
  • git mergetool — konfiguriertes Merge-Tool starten

Rückgängig

  • git restore <pfad> — Datei auf HEAD zurücksetzen, Änderungen weg
  • git restore --staged <pfad> — unstagen, Änderungen behalten
  • git reset --soft HEAD~1 — letzten Commit auflösen, Änderungen gestaged behalten
  • git reset --hard <commit> — alles verwerfen, nicht rückholbar
  • git revert <commit> — Commit durch Gegen-Commit aufheben
  • git reflog — Referenzverlauf, um verlorene Commits wiederzufinden

Stash

  • git stash push -m "<text>" — Änderungen wegpacken
  • git stash push -u — inklusive unversionierter Dateien
  • git stash list — Stashes anzeigen
  • git stash pop — letzten Stash zurückholen und entfernen
  • git stash apply <stash> — anwenden, aber behalten

Worktrees

  • git worktree list — alle Worktrees
  • git worktree add <pfad> <branch> — Worktree für bestehenden Branch
  • git worktree add -b <name> <pfad> — Worktree mit neuem Branch
  • git worktree remove <pfad> — Worktree entfernen
  • git worktree prune — verwaiste Einträge aufräumen

Suchen

  • git grep -n "<text>" — im Arbeitsbaum suchen
  • git log -S"<text>" — Commits, die den Text einfügen oder entfernen
  • git blame -L 40,60 <pfad> — Zeilenbereich zuordnen
  • git bisect start — binäre Suche nach dem Fehler-Commit