foundation

Stash

Временно сохраняйте незакоммиченную работу при смене контекста, затем осознанно применяйте или удаляйте.

Stash сохраняет незакоммиченные изменения (и опционально untracked) вне текущей ветки для смены контекста. Записи в стеке — не система учёта работы.

					git stash push -m "wip login form"
git stash push -u          # включая untracked
git stash list
git stash pop              # применить и снять верхнюю
git stash apply stash@{2}
				

Для коротких прерываний: срочный hotfix, review чужой ветки, быстрый эксперимент. Для работы на дни и с review — WIP-ветка.

На интервью: tracked vs untracked, apply vs pop, именование stash, забытая «спрятанная» работа.

Типовые ошибки: большой стек stash как невидимый долг; stash перед pull и потеря контекста; stash вместо атомарных коммитов.

Компромисс — удобство смены контекста против видимости и reviewability веток.

Чеклист:

  • Stash только для коротких прерываний.
  • Именуйте stash при нескольких записях.
  • Сознательно чистите устаревшие stash.
  • WIP-ветки для значимой незавершённой работы.