I use SmartGit for both Git and Mercurial, which is great: I have just one tool learn, and the same tool on Windows and on Mac. But, the commands and preferences for the two VCS are inconsistently implemented. For example:
The preference "Stash: Automatically save stash if Pull, Checkout, or Interactive Rebase fails because of local changes" works for Git but not Mercurial. Similarly, the Apply patch menu item uses the git apply command rather than the Mercurial import command even when pointing to a Mercurial repository.
SmartGit should be smart enough to know what sort of repository it is executing against and use the appropriate command, or tell us when that command hasn't been implemented.
Also, perhaps there needs to be separate preference tabs for Git- and Mercurial-specific preferences as there are some siginificant differences.
Customer support service by UserEcho