I even use it to snapshot my home directory. I have a cron job that periodically does, basically, this:
git stashgit apply
to squirrel away any work I haven't checked in yet.
Until today, it did exactly that, but a few days ago, I started having a Makefile change get undone. My old version kept coming back up like bad Mexican food. Hmm.
The bad (old) version was in my stash. What would happen was that git stash would run, figure out I had no recent changes, and do nothing. Then, git apply would run, and restore the last un-checked-in code in the stash (my bad Makefile).
Now, the code says this:
git stash | grep -q 'No local changes to save' ||git stash apply