Menu
Coddy logo textTech

Git Stash

Zuletzt aktualisiert

git stash sichert deine nicht committeten Änderungen und setzt dein Arbeitsverzeichnis in einen sauberen Zustand zurück, sodass du den Branch wechseln oder pullen kannst, ohne halbfertige Arbeit zu committen. Die Änderungen landen auf einem Stapel, den du später mit git stash pop (anwenden und entfernen) oder git stash apply (anwenden und behalten) erneut anwenden kannst.

Probiere diese im Terminal-Playground aus - eine echte Shell in deinem Browser, nichts zu installieren.

Syntax

CommandWhat it does
git stashVersionierte Änderungen sichern, Arbeitsverzeichnis säubern
git stash -uSichert auch nicht versionierte Dateien
git stash push -m "msg"Stashen mit einer beschreibenden Nachricht
git stash push <file>Stasht nur eine bestimmte Datei
git stash listListet alle Stashes auf
git stash popWendet den letzten Stash erneut an und entfernt ihn
git stash applyWendet den letzten Stash erneut an, behält ihn
git stash dropLöscht den letzten Stash
git stash clearLöscht alle Stashes

pop vs apply

Behaviorgit stash popgit stash apply
Wendet die Änderungen erneut anJaJa
Entfernt den Stash danachJaNein
Gut zum Wiederverwenden eines StashesNeinJa

Git stash FAQ

Was macht git stash?
Es speichert deine nicht committeten Änderungen auf einem Stapel und setzt dein Arbeitsverzeichnis auf den letzten Commit zurück, was dir einen sauberen Ausgangspunkt gibt. Deine Änderungen gehen nicht verloren - sie werden gesichert und können später mit git stash pop oder git stash apply erneut angewendet werden. Das ist praktisch, wenn du den Branch wechseln musst, aber noch nicht bereit zum Committen bist.
Was ist der Unterschied zwischen git stash pop und git stash apply?
Beide wenden deinen neuesten Stash erneut auf das Arbeitsverzeichnis an. git stash pop entfernt diesen Stash danach zusätzlich vom Stapel, während git stash apply ihn auf dem Stapel belässt, sodass du ihn woanders erneut anwenden kannst. Verwende pop für eine einmalige Wiederherstellung und apply, wenn du den Stash wiederverwenden möchtest.
Enthält git stash nicht versionierte Dateien?
Standardmäßig nicht - ein einfaches git stash sichert nur versionierte (geänderte) Dateien. Füge -u (git stash -u) hinzu, um nicht versionierte Dateien einzuschließen, oder -a, um auch ignorierte Dateien einzuschließen. Ohne diese Flags bleiben neue Dateien, die du nicht mit git add hinzugefügt hast, in deinem Arbeitsverzeichnis.
Wie wende ich einen bestimmten Stash an?
Führe git stash list aus, um sie nummeriert wie stash@{0}, stash@{1} zu sehen, und dann git stash apply stash@{1} (oder pop), um einen bestimmten erneut anzuwenden. Jeder Stash zeigt auch den Branch und die Nachricht an, mit denen er erstellt wurde, sodass du sie unterscheiden kannst.
Kann ich das online üben?
Ja. Öffne den Terminal-Playground, um git stash in einer echten Shell in deinem Browser auszuführen - nichts zu installieren. Coddys kostenloser interaktiver Git-Kurs behandelt außerdem Schritt für Schritt, wie du laufende Arbeit verwaltest.
Coddy programming languages illustration

Lerne Git mit Coddy

LOS GEHT'S