Git - Stash-Operation: Ein Anfängerleitfaden

Hallo da draußen, zukünftige Git-Meister! Heute tauchen wir in eine der nützlichsten Funktionen von Git ein: die Stash-Operation. Als dein freundlicher Nachbarschafts-Computerlehrer bin ich hier, um dich mit der gleichen Begeisterung durch dieses Thema zu führen, die ich verspüre, wenn ich unerwartet eine Pizza im Kühlschrank finde. Los geht's!

Git - Stash Operation

Was ist Git Stash?

Stell dir vor, du arbeitest an einem Gemälde und plötzlich musst du dringend etwas anderes malen. Du willst deine aktuelle Arbeit nicht durcheinander bringen, aber du kannst sie auch nicht gleich fertigstellen. Was tust du? In der Welt der Kunst könntest du deine Leinwand abdecken und beiseitelegen. In Git verwenden wir den 'stash'-Befehl!

Git stash ist wie ein magischer Schrank, in dem du deine unvollendete Arbeit temporär lagern kannst. Es ermöglicht dir, schnell den Kontext zu wechseln, ohne unvollendete Arbeit zu committen.

Warum Git Stash verwenden?

  1. Um ohne unvollendete Arbeit Branches zu wechseln
  2. Um Änderungen von einem Branch auf einen anderen anzuwenden
  3. Um schnell Änderungen zu verbergen, wenn Änderungen gezogen werden

Grundlegende Stash-Operationen

Schauen wir uns die häufigsten Stash-Operationen an, die du verwenden wirst:

1. Änderungen stashing

Um deine aktuellen Änderungen zu stashing, führe einfach aus:

git stash

Dieser Befehl nimmt alle deine uncommitten Änderungen (sowohl gestaged als auch unstaged) und speichert sie auf dem Stash-Stack. Dein Arbeitsverzeichnis wird sauber, passend zum HEAD-Commit.

2. Deine Stashes ansehen

Um zu sehen, was in deinem Stash ist, verwende:

git stash list

Dies zeigt dir eine Liste aller deine Stashes, wie diese:

stash@{0}: WIP auf main: 1234567 Deine letzte Commit-Nachricht
stash@{1}: WIP auf feature: 7654321 Deine ältere Commit-Nachricht

3. Einen Stash anwenden

Wenn du bereit bist, deine gesttigten Änderungen weiterzuarbeiten, kannst du sie mit folgendem Befehl anwenden:

git stash apply

Dies wird den letzten Stash anwenden. Wenn du einen bestimmten Stash anwenden möchtest, kannst du das tun:

git stash apply stash@{2}

4. Einen Stash entfernen

Nachdem du einen Stash angewendet hast, bleibt er im Stash-Verzeichnis. Um ihn zu entfernen, verwende:

git stash drop

Oder um einen bestimmten Stash zu entfernen:

git stash drop stash@{2}

5. Anwenden und Entfernen in einem Schritt

Wenn du einen Stash anwenden und sofort aus dem Stash-Verzeichnis entfernen möchtest, verwende:

git stash pop

Dies ist äquivalent zu git stash apply gefolgt von git stash drop.

Fortgeschrittene Stash-Techniken

Nun, da wir die Grundlagen abgedeckt haben, schauen wir uns einige fortgeschrittene Techniken an. Keine Sorge, wir gehen Schritt für Schritt!

1. Untracked-Dateien stashing

Standardmäßig stasht git stash nur verfolgte Dateien. Um untracked-Dateien einzuschließen, verwende:

git stash -u

2. Einen Branch aus einem Stash erstellen

Manchmal möchtest du möglicherweise einen neuen Branch erstellen, um deine gesttigten Änderungen zu bearbeiten. Das kannst du mit folgendem Befehl tun:

git stash branch neuer-Branch-Name stash@{1}

Dies erstellt einen neuen Branch, checkt ihn aus und wendet dann den Stash an und entfernt ihn.

3. Spezifische Dateien stashing

Wenn du nur bestimmte Dateien stassen möchtest, kannst du das tun:

git stash push -m "Deine Stash-Nachricht" datei1.txt datei2.txt

4. Stash-Diffs ansehen

Um den Diff eines Stash anzuzeigen, verwende:

git stash show -p stash@{0}

Die -p-Option zeigt den vollständigen Diff, nicht nur eine Zusammenfassung.

Best Practices für die Verwendung von Git Stash

  1. Benenne deine Stashes: Verwende git stash save "Deine Nachricht" um deine Stashes beschreibende Namen zu geben.
  2. Behalte Stashes nicht zu lange: Stashes sind für den temporären Gebrauch gedacht. Versuche, sie bald nach der Erstellung anzuwenden oder zu entfernen.
  3. Sei vorsichtig beim Anwenden von Stashes: Wenn du seit der Erstellung des Stashes Änderungen vorgenommen hast, könntest du Konflikte beim Anwenden haben.
  4. Verwende Stash beim Kontextwechsel: Stash ist perfekt für den schnellen Wechsel zu einer anderen Aufgabe, ohne unvollendete Arbeit zu committen.

Häufige Stash-Befehle Tabelle

Hier ist eine praktische Tabelle der häufigsten Stash-Befehle:

Befehl Beschreibung
git stash Änderungen stashing
git stash list Alle Stashes auflisten
git stash apply Den letzten Stash anwenden
git stash drop Den letzten Stash entfernen
git stash pop Den letzten Stash anwenden und entfernen
git stash clear Alle Stashes entfernen
git stash show Die Änderungen im letzten Stash anzeigen
git stash branch <Name> Einen neuen Branch aus einem Stash erstellen

Fazit

Und da hast du es, Leute! Du bist jetzt ein Git-Stash-Experte. Denke daran, wie jedes Werkzeug wird Stash mächtiger, je öfter du es verwendest. Also hab keine Angst zu experimentieren!

Wenn wir aufhören, erinnere ich mich an einen Schüler, der mir einmal sagte: "Git Stash hat mein Projekt... und wahrscheinlich meine Vernunft gerettet!" Und das ist die Schönheit von Git - es ist nicht nur ein Versionskontrollsystem, es ist ein Lebensretter für Entwickler überall.

Weiter stassen, weiter lernen und vor allem weiter coden! Bis zum nächsten Mal, das ist dein freundlicher Nachbarschafts-Computerlehrer, der sich verabschiedet. Frohes Git-ing!

Credits: Image by storyset