Sorry if this has been addressed elsewhere... my searches haven't turned up any info so far. Is it possible to shelve select files or hunks in SourceTree (instead of shelving all uncommitted changes)? Likewise, can you unshelve select items?
Not to point to another app that does this, but TortoiseHg fairly recently brought this feature back (it was in 1.x and temporarily lost in 2.x). It's similar to how SourceTree lets you discard individual hunks now. During the commit, you can check/uncheck the hunks for files. You don't need to shelve/unshelve the hunks to handle incremental/cherry picked commits with such an interface.