I've complained before about SourceTree not recognising changes on the filing system(see  and ), but today SourceTree has lost an afternoon's work for me when stashing.
This has happened twice now - the other day I assumed I hadn't been paying attention and made a mistake, but today there is no doubt - I specifically watched my stashing, created a new branch, and applied the stash. After applying the stash, my unit tests started to fail because my changes to one of my source files were lost.
It seems that, because SourceTree does not see that the filing system has changed, if you stash your changes then you can loose the work that it has not seen.
I'm on OSX 10.13.2, using a Git repo, and SourceTree 2.7.1