Git Stash

1 λεπτά

Πίνακας περιεχομένων

  1. Τι είναι το stash;
  2. Άμεση πρακτική
  3. Απαραίτητες εντολές
  4. Τυπική περίπτωση χρήσης

1. Τι είναι το stash;

Git stash = Προσωρινή αποθήκευση των ΜΗ καταχωρημένων τροποποιήσεών σας.

Αναλογία: Είναι σαν να βάζετε τα πράγματά σας σε ένα μυστικό συρτάρι πριν κάνετε κάτι άλλο.

Γιατί;

  • Γράφετε κώδικα στο feature-A
  • ΕΠΕΙΓΟΝ: κρίσιμο σφάλμα στο main
  • Δεν θέλετε να κάνετε commit μισοτελειωμένου κώδικα
  • Λύση: git stash → αλλαγή κλάδου → διόρθωση → επιστροφή → git stash pop

Επιστροφή στον πίνακα περιεχομένων

2. Άμεση πρακτική

bash
mkdir demo-stash && cd demo-stash  
git init

echo "print('v1')" > app.py
git add . && git commit -m "Version initiale"

# Αρχίζετε να γράφετε κώδικα
echo "print('work in progress')" >> app.py

# ΕΠΕΙΓΟΝ! Πρέπει να αλλάξετε κλάδο
git stash                    # Αποθήκευση της εργασίας σε εξέλιξη
git status                   # Καθαρό working directory!

# Κάντε κάτι άλλο...
git checkout -b hotfix
echo "print('CRITICAL FIX')" > fix.py
git add . && git commit -m "Urgent fix"

# Επιστροφή στην αρχική εργασία  
git checkout main
git stash pop               # Ανάκτηση της εργασίας σε εξέλιξη

Μαγεία! Οι τροποποιήσεις σας επέστρεψαν.

Επιστροφή στον πίνακα περιεχομένων

3. Απαραίτητες εντολές

ΕντολήΕνέργεια
git stashΑποθήκευση των τροποποιήσεων
git stash popΑνάκτηση + διαγραφή από το stash
git stash listΠροβολή όλων των stash
git stash applyΑνάκτηση ΧΩΡΙΣ διαγραφή
git stash dropΔιαγραφή ενός stash
git stash clearΆδειασμα όλων των stash

Επιστροφή στον πίνακα περιεχομένων

4. Τυπική περίπτωση χρήσης

Κλασική κατάσταση:

  1. Γράφετε κώδικα ήρεμα
  2. Συνάδελφος: «Υπάρχει σφάλμα στην παραγωγή!!!»
  3. Εσείς: git stash
  4. Γρήγορη διόρθωση και ανάπτυξη
  5. Εσείς: git stash pop
  6. Συνεχίζετε σαν να μην συνέβη τίποτα

Stash = ο καλύτερος φίλος σας για τις διακοπές!

Επιστροφή στον πίνακα περιεχομένων