Overview
Git stash temporarily sets aside uncommitted work so that you can switch tasks or branches without committing incomplete changes or discarding them.
It solves a specific interruption problem: the current work is valuable, but it is not ready to become a commit, and another branch needs immediate attention.