Git-Tutorials #1 – git stash

Norbert beschreibt in seinem Blog Phpmonkeys.de die Verwendung von git stash.

Während ich bisher gewohnt war, selbst für jede noch so kleine Änderung einen Branch anzulegen (was bei git zum Glück ja wirklich einfach geht), so bietet der Ansatz mit git stash eine willkommene Erleichterung für kleinere Änderungen.

Mit git stash werden die aktuellen Änderungen an der Arbeitskopie weggespeichert und man hat wieder eine „saubere“ Arbeitskopie für „die kleine Änderung zwischendurch“ zur Verfügung!

Seine eigenen, im Stash [Übersetzung] gespeicherten Änderungen (Liste der Änderungen mit git stash list)  kann man entweder dort herausholen und aus dem Stash löschen (git stash pop), oder wieder auf die Arbeitskopie anwenden, aber ebenfalls im Stash belassen (git stash apply).

Die einzelne Änderung im Stash kann man mit git stash drop löschen, den ganzen Stash leert man mit git stash clear.

Der Vorteil gegenüber Branches ist das verhältnismäßig einfache Verwalten von kleinen Änderungen, während Branches ihre Stärke im Handling von umfangreicheren Änderungen haben. Dabei ist der Übergang recht fließend.

Da git inzwischen auch git stash save <stashname> unterstützt, schwindet der Unterschied immer mehr, mit git stash branch <branchname> [<stashname>] kann man die Änderungen im Stash auch auf einen Branch anwenden, während git stash show -p <stashname> den Patch und git stash show -u <stashname> den Diff zwischen Stash und Arbeitskopie zeigt.

Für mich stellt git stash ein praktisches Werkzeug dar, mit dem ich mir auch keine Gedanken machen muss, was ich zu tun habe, falls ich doch einmal auf dem Trunk gearbeitet habe. Es spart mir Zeit und Arbeit – das, was ein gutes Tool machen sollte!

Vielen Dank an Norbert, der mich mit seinem Blogbeitrag auf git stash aufmerksam gemacht hat!

Ein Gedanke zu „Git-Tutorials #1 – git stash

Schreibe einen Kommentar