Recs.
Updated
SpecsUpdate
Pros
Pro Side by side comparison
The best side by side comparison in any Git GUI. You can edit and do line by line reverts, something that can be taken for granted and you'd be surprised when other clients don't have these features. The 3-way side by side merge for conflicts is also a breeze.
Pro Smart embedded difference viewer
When the changes affect only a few characters in a line of code, the embedded difference viewers in the majority of competitors (such as SourceTree) show the whole line as removed and re-added. SmartGit highlights the characters that have been removed / added, so they are easier to read.
Pro Has a conflict solver tool included
It doesn't require an external merge tool (like Sourcetree). This is very useful and works better than other tools, and also is cross platform.
Pro Uncluttered UI
SmartGit has a rather clean and uncluttered user interface. All the most useful tools and information are displayed at all times or are otherwise just a couple of clicks away.
All repositories are displayed in the sidebar and through a tabbed interface you can view various info about a specific repository (files, branches, branch graph, etc). The most used git commands like pull
, push
, sync
, commit
and merge
are always available on top.
Pro Can be integrated with Github, Bitbucket, and Atlassian Stash
Using OAuth, you can connect SmartGit with your accounts in Github, Bitbucket, or Stash and access the remote repositories there. You can then clone, fork, commit or push to your remote repositories from inside SmartGit. You can also view and manage pull requests for your open source projects from SmartGit.
Pro Free for non-commercial use (with some restrictions)
SmartGit can be used free of charge by Open Source developers, teachers and their students, or for hobby, non-paid usage. However, some features are only available with paid versions, like JIRA/GitHub Entreprise/Bitbucket integration, distributed review, DeepGit.
Pro Great overview of the project/repository's log
SmartGit's log viewer displays the full commit history in a clean UI. This can be filtered to only show commits matching a certain criterion (e.g. branch).
Cons
Con Very expensive and no multi-user licences
91 EUR per year per person for the base version is more expensive than top development IDEs, and is exaggerated.
No multi-user and no site licence either, which makes the licence management a pain.
Con Handling of git repository security tokens & credentials
The handling of git repository security tokens & credentials is bad: one usually has to ask google, read discussions and then start to use try & error to get working access.
You would expect much more from software that calls itself smart.
Con Slow & sluggish sometimes
Specifically, when you come back to the program, you need to give it a few seconds to make sure it has the correct updates that you've been working on. In the same vein, when you commit, it takes a bit to refresh back to clean working tree.
Con Some git functionality has been renamed
In order to preserve the same interface across Git and Mercurial, some naming compromises have been made.
Recommendations
Comments
Flagged Pros + Cons
Pro Free for non-commercial use (with some restrictions) (duplicate)
SmartGit can be used free of charge by Open Source developers, teachers and their students, or for hobby, non-paid usage. However, some features are only available with paid versions, like JIRA/GitHub Entreprise/Bitbucket integration, distributed review, DeepGit.
Pro Supports Mercurial & SVN
Apart from Git, SmartGit supports both Mercurial and SVN via a git bridge.
Pro Can be integrated with Github, GitLab, Bitbucket, and Atlassian Stash
Using OAuth, you can connect SmartGit with your accounts in Github, GitLab, Bitbucket, or Stash and access the remote repositories there. You can then clone, fork, commit or push to your remote repositories from inside SmartGit. You can also view and manage pull requests for your open source projects from SmartGit.
Con Great commit tree in log
Allows powerful navigation between branches and eases merges
Out of Date Pros + Cons
Con Git has to be installed separately
Installing SmartGit only gives you the client, if you don't have Git installed on your computer you have to do so separately.
