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

Übersicht

git add -p [<path>...]
git add --patch [<path>...]

Beschreibung

Der git add -p-Befehl startet eine interaktive Oberfläche, die durch jeden "Hunk" von Änderungen in Ihrem Working Tree geht und Sie für jeden bittet zu entscheiden: stagen, überspringen, splitten, bearbeiten usw. Das ist die Geheimwaffe zum Erstellen sauberer, atomarer Commits, wenn Ihr Working Tree eine Mischung verwandter und unzusammenhängender Änderungen enthält.

Die interaktive Eingabeaufforderung akzeptiert Einzelbuchstaben-Befehle: y (ja, diesen Hunk stagen), n (nein, überspringen), s (in kleinere Hunks splitten), e (Hunk manuell bearbeiten), q (beenden), ? (Hilfe) und mehrere andere. add -p zu meistern ist eine der hochwertigsten Fähigkeiten zur Erzeugung reviewbarer Historie.

Im täglichen Einsatz integriert sich git add -p eng mit Shell-Aliasen, Editor-Plugins und Continuous Integration. Power-User fügen oft Aliase hinzu, die Flags kombinieren, die sie immer übergeben, oder wickeln den Befehl in Skripte, die Teamkonventionen durchsetzen. Die Ausgabeformatierung kann über Git-Config angepasst werden — Pretty-Formate, Farbschemata und Pager-Verhalten sind alle einstellbar. Wenn etwas schiefgeht, ist der erste Diagnoseschritt üblicherweise, den Befehl erneut mit GIT_TRACE=1 in der Umgebung auszuführen, was die zugrunde liegenden Plumbing-Aufrufe offenlegt. Für ungewöhnliche Situationen öffnet die --help-Ausgabe (git add -p --help) die vollständige Manpage mit Details zu jeder Option, einschließlich solcher, die in alltäglichen Workflows selten verwendet werden, aber für Debugging oder Skripting im großen Maßstab essentiell sind.

Zu verstehen, wie git add -p mit dem Rest von Gits Datenmodell interagiert — der Objektdatenbank, dem Index, Refs und dem Working Tree — zahlt sich aus. Jeder Befehl operiert auf einer Teilmenge dieser Stücke, und zu wissen, welche er berührt, hilft Ergebnisse vorherzusagen und sich von Fehlern zu erholen. Das Lesen der offiziellen Git-Dokumentation neben praktischer Übung in einem Wegwerf-Repository ist der schnellste Weg, die Nuancen zu verinnerlichen. Die meisten Produktionsprobleme mit Git rühren von einer von drei Ursachen: überraschendem Standardverhalten, partiellen Netzwerkoperationen oder dem Umschreiben bereits geteilter Historie. Ein funktionierendes mentales Modell der Nebenwirkungen von git add -p hilft, alle drei zu vermeiden.

Häufige Optionen

Interaktiver BefehlBeschreibung
yDiesen Hunk stagen.
nDiesen Hunk nicht stagen.
sIn kleinere Hunks splitten.
eDen Hunk manuell bearbeiten.
aDiesen und alle verbleibenden Hunks in dieser Datei stagen.
dDiesen und alle verbleibenden Hunks in dieser Datei überspringen.
qBeenden; keine weiteren Hunks stagen.
?Hilfe anzeigen.

Beispiele

git add -p
    # Durch die Hunks jeder geänderten Datei gehen

    git add -p src/auth.go
    # Auf eine Datei beschränken

    # In der Eingabeaufforderung:
    # 's' drücken, um einen großen Hunk in kleinere zu splitten
    # 'e' drücken, um den Hunk-Text manuell zu bearbeiten
    # 'y' oder 'n' drücken, um zu akzeptieren oder zu überspringen

    git diff --cached
    # Überprüfen, was jetzt gestaged ist

Häufige Fehler

Einen Hunk mit e zu bearbeiten erfordert das Verständnis des Unified-Diff-Formats — eine Zeile hinzufügen bedeutet, die neue Datei hat sie, eine Kontextzeile entfernen bedeutet, die neue Datei hat sie nicht. Fehler hier können verwirrenden Index-Zustand erzeugen. Verifizieren Sie immer mit git diff --cached danach.

Verwandte Befehle

git add, git stash -p, git restore -p, git checkout -p