Practical explanation
Git stash temporarily stores (or stashes) the changes you make to your working copy so you can perform other tasks, come back, and reapply them later. Stash is useful if you need to quickly change context and work on something else, but you're in the middle of a code change and aren't quite ready to commit.