Von Gast (nicht überprüft) , 29 April 2026

Einführung

Git belohnt Befehlszeilen-Geläufigkeit. Ein paar kleine Gewohnheiten machen die tägliche Arbeit dramatisch schneller und sicherer. Diese Seite sammelt die wirkungsvollsten Tipps für neue Nutzer.

Wissen Sie immer, wo Sie sind

Fügen Sie den Git-Status zu Ihrem Shell-Prompt hinzu. Bash und Zsh liefern beide contrib-Skripte mit:

# bash
source /usr/share/git/completion/git-prompt.sh
PS1='\w$(__git_ps1 " (%s)")\$ '

# zsh mit oh-my-zsh: Git-Plugin in ~/.zshrc aktivieren

Nun sind der aktuelle Branch und der Dirty-Zustand jederzeit sichtbar.

Tab-Vervollständigung

Git liefert git-completion.bash mit; die meisten Paketmanager installieren es automatisch. Vervollständigen Sie Befehle, Branches, Remotes und Refs per Tab:

git che<TAB>
git switch fea<TAB>

Aliase, die sich auszahlen

git config --global alias.s "status -sb"
git config --global alias.lg "log --oneline --graph --decorate --all"
git config --global alias.co switch
git config --global alias.last "log -1 HEAD --stat"
git config --global alias.unstage "restore --staged"

Kürzerer Status

git status -sb

Die -sb-Form ist zweispaltig und enthält Branch-Tracking-Info; perfekt für schnelle Prüfungen.

Bessere Diffs

git diff --word-diff
git diff --color-words
git config --global diff.colorMoved zebra

colorMoved=zebra hebt verschobene Codeblöcke anders hervor als hinzugefügte/entfernte, was Refactorings einfacher zu reviewen macht.

Nützliche Umgebung

  • Setzen Sie GIT_PAGER=less -FRX für sinnvolles Paging.
  • Setzen Sie EDITOR auf etwas, das Sie zu beenden wissen.
  • Verwenden Sie einen Credential-Helper: git config --global credential.helper cache unter Linux, osxkeychain unter macOS, manager unter Windows.

Sichere Voreinstellungen

git config --global pull.ff only
git config --global push.autoSetupRemote true
git config --global fetch.prune true
git config --global rerere.enabled true

rerere ("reuse recorded resolution") merkt sich, wie Sie einen Konflikt gelöst haben, und spielt es beim nächsten Mal ab.

Commit-Historie schnell lesen

Zwei Anzeigetricks zahlen sich täglich aus:

git log --oneline --graph --all --decorate
git log -p --follow path/to/file
git show HEAD --stat
git diff @{u}                  # gegen Upstream
git diff @{1.day.ago}          # gegen HEAD vor einem Tag

Jeder Git-Befehl, der einen Commit erwartet, akzeptiert dieselbe Revisions-Syntax: Branch-Namen, SHAs, HEAD~3, @{upstream}, @{2.hours.ago}, tag^{commit}. Lernen Sie sie einmal über git help gitrevisions und nutzen Sie sie überall.

Häufige Fehler

Lange Befehle aus Blogposts kopieren, ohne sie zu verstehen; lesen Sie für jedes unbekannte Flag git help <cmd>. Destruktive Befehle auf kurze Namen aliasen (r = reset --hard) und sie versehentlich auslösen; reservieren Sie kurze Aliase für sichere Operationen. Tab-Vervollständigung der Shell ignorieren und Branch-Namen von Hand tippen, mit allen damit verbundenen Tippfehlern. Schließlich: Fügen Sie niemals Shell-Ausgabe in eine Commit-Nachricht ein in der Erwartung, sie würde als Code dargestellt; verwenden Sie einen Codeblock in Ihrem Editor oder committen Sie stattdessen eine Datei. Kleine Gewohnheiten summieren sich; investieren Sie einen Nachmittag in die Konfiguration Ihrer Shell und ernten Sie jahrelang die Vorteile.