git stash временно сохраняет ваши незафиксированные изменения и возвращает рабочую директорию в чистое состояние — чтобы вы могли переключиться на другой контекст (например, исправить срочный баг в другой ветке) без коммита недоделанной работы, а затем восстановить изменения позже.
Проблема, которую решает stash
You're mid-work with uncommitted changes, but need to switch context urgently:
→ switch branches? Git may refuse (uncommitted changes would conflict) or carry
them along messily
→ commit half-done work? No — it's not ready (pollutes history)
→ STASH saves your changes aside, giving you a clean working directory to switch.
