I've used SmartGit HG for a while but now I switched to SourceTree. One feature that I'm used to and really missing in SourceTree is the auto stash feature. Current pull workflow:
- Currently on master
- Made some code changed but I'm not yet ready to commit
- My collegue pushed some changes I want to make use of before committing my code changes
- I perform a pull in SourceTree. But now SourceTree wants me to commit or stash my changes.
- Since my commit is not yet ready I'm stashing my changes.
- I again click pull in SourceTree to fetch the changes
- I apply my stash
When I'm having the same scenario in SmartGit HG it will ask me to stash my changes (if any) before pulling and it will automatically apply the stash when the changes are successfully pulled. This works much faster and I think it's quite elegant. It even has the option to always apply this approach on every pull.