En aquest tema, aprendrem com utilitzar la funcionalitat d'emmagatzematge de canvis (stashing) de Git. Aquesta característica és molt útil quan necessitem canviar de branca o fer altres operacions sense perdre els canvis no confirmats (uncommitted changes) en els quals estem treballant.

Què és l'Emmagatzematge de Canvis?

L'emmagatzematge de canvis (stashing) permet guardar temporalment els canvis no confirmats en una pila (stack) d'emmagatzematges (stashes) per poder treballar en una altra cosa i després recuperar aquests canvis més tard.

Casos d'Ús Comuns

  • Canviar de branca sense perdre els canvis actuals.
  • Treballar en una correcció urgent mentre es tenen canvis pendents.
  • Guardar l'estat actual del treball per continuar més tard.

Com Emmagatzemar Canvis

Comandament Bàsic

Per emmagatzemar els canvis, utilitzem el comandament git stash:

git stash

Aquest comandament guarda els canvis no confirmats i restaura l'estat del directori de treball a l'últim commit.

Emmagatzemar amb un Missatge

Podem afegir un missatge descriptiu per identificar fàcilment l'emmagatzematge:

git stash save "Missatge descriptiu"

Emmagatzemar Fitxers No Seguits

Per defecte, git stash només emmagatzema els fitxers seguits (tracked files). Si volem incloure fitxers no seguits (untracked files), utilitzem l'opció -u:

git stash -u

Recuperar Canvis Emmagatzemats

Aplicar l'Últim Emmagatzematge

Per aplicar l'últim emmagatzematge i restaurar els canvis, utilitzem:

git stash apply

Aplicar un Emmagatzematge Específic

Per veure la llista d'emmagatzematges disponibles, utilitzem:

git stash list

Això mostrarà una llista d'emmagatzematges amb identificadors com stash@{0}, stash@{1}, etc. Per aplicar un emmagatzematge específic, utilitzem:

git stash apply stash@{n}

Aplicar i Eliminar un Emmagatzematge

Per aplicar un emmagatzematge i eliminar-lo de la pila, utilitzem:

git stash pop

Eliminar Emmagatzematges

Eliminar un Emmagatzematge Específic

Per eliminar un emmagatzematge específic, utilitzem:

git stash drop stash@{n}

Eliminar Tots els Emmagatzematges

Per eliminar tots els emmagatzematges, utilitzem:

git stash clear

Exercicis Pràctics

Exercici 1: Emmagatzemar i Recuperar Canvis

  1. Crea un nou fitxer i afegeix-hi contingut.
  2. Emmagatzema els canvis utilitzant git stash.
  3. Canvia a una altra branca.
  4. Torna a la branca original i recupera els canvis utilitzant git stash apply.

Exercici 2: Emmagatzemar amb Fitxers No Seguits

  1. Crea un nou fitxer no seguit (untracked file).
  2. Emmagatzema els canvis incloent els fitxers no seguits utilitzant git stash -u.
  3. Recupera els canvis i verifica que el fitxer no seguit també ha estat restaurat.

Errors Comuns i Consells

  • Oblidar-se d'afegir un missatge descriptiu: Utilitzar missatges descriptius ajuda a identificar fàcilment els emmagatzematges.
  • No incloure fitxers no seguits quan és necessari: Utilitza l'opció -u per assegurar-te que tots els canvis, inclosos els fitxers no seguits, són emmagatzemats.
  • Confondre apply amb pop: Recorda que apply només aplica els canvis, mentre que pop aplica i elimina l'emmagatzematge.

Resum

L'emmagatzematge de canvis és una eina poderosa en Git que permet guardar temporalment els canvis no confirmats per poder treballar en altres tasques sense perdre el progrés. Hem après com emmagatzemar, recuperar i eliminar emmagatzematges, així com alguns consells per evitar errors comuns. Ara estem preparats per gestionar millor els nostres canvis no confirmats i mantenir un flux de treball més eficient.

Dominar Git: De Principiant a Avançat

Mòdul 1: Introducció a Git

Mòdul 2: Operacions Bàsiques de Git

Mòdul 3: Branques i Fusió

Mòdul 4: Treballant amb Repositoris Remots

Mòdul 5: Operacions Avançades de Git

Mòdul 6: Eines i Tècniques de Git

Mòdul 7: Estratègies de Col·laboració i Flux de Treball

Mòdul 8: Millors Pràctiques i Consells de Git

Mòdul 9: Resolució de Problemes i Depuració

Mòdul 10: Git en el Món Real

© Copyright 2024. Tots els drets reservats