stash name drop git git-stash

name - ¿Cuándo debería usar git stash?



git stash name (3)

Si trabajo en la sucursal A y de repente necesito trabajar en la sucursal B antes de estar listo con una confirmación en la sucursal A, guardo mis cambios en A, reviso B, hago mi trabajo allí, luego pago la cuenta A y aplico el alijo.

Si trabajo en A y quiero dejar de trabajar durante el día, ¿debería ocultar mi trabajo y luego aplicarlo al día siguiente, cuando reanude mi trabajo, o debería dejar las cosas tal como están, los archivos modificados no confirmados en el trabajo? directorio. No veo por qué tendría que usar escondite en este caso, excepto si hay algún beneficio de seguridad.

Además, otro escenario: trabajo tanto en el trabajo como en casa. Si no estoy listo con un compromiso cuando quiero irme a casa, ¿puedo guardar mi trabajo, llevarlo a GitHub y luego guardarlo en mi casa?


El comando stash esconderá cualquier cambio que haya realizado desde su último commit. En su caso, no hay razón para esconderse si va a continuar trabajando en él al día siguiente. Solo usaría el escondite para deshacer los cambios que no quiere comprometer.


Si presionas " git stash cuando tienes cambios en la copia de trabajo (no en el área de preparación), "git" creará un objeto escondido y lo empujará a la pila de "stashes" (como hiciste con " git checkout -- . pero no perderás). cambios). Más tarde, puedes hacer pop desde la parte superior de la pila.


Stash es solo un método de conveniencia. Dado que las sucursales son tan baratas y fáciles de administrar en git, personalmente, casi siempre prefiero crear una nueva rama temporal que almacenar, pero es una cuestión de gustos en su mayoría.

El único lugar donde me gusta esconderme es si descubro que olvidé algo en mi último compromiso y que ya comencé a trabajar en el siguiente en la misma rama:

# Assume the latest commit was already done # start working on the next patch, and discovered I was missing something # stash away the current mess I made git stash save # some changes in the working dir # and now add them to the last commit: git add -u git commit --ammend # back to work! git stash pop