Avalon A Programmer Blog

Comparison of git clients

There are many git clients available. I have used GitHub Desktop, SourceTree, GitKraken and the command line. I am not going to talk about the command line. Although it is powerful but you also need to google for the options.

All three other clients are GUI clients which are much user friendly than the command line.

GitHub Desktop

Pros:

  • Best integration with GitHub
  • Simple user interface
  • Preview difference on side panel

Cons:

  • Poor integration with other git hosting service
  • Very limited git features
  • Small git tree

From its name, you know that it is developed by GitHub and work best with repositories that are host on GitHub. It is a good client for users that know little about git. You only need to sync (pull & push) commits with branch support.

If you use this with GitHub, not only you can use common git feature, you can also publish repositories.

SourceTree

Pros:

  • Decent integration with different git host.
  • Rich git features
  • Preview difference on side panel

Cons:

  • Some annoying bugs (Some of them can be fixed by workaround)

SourceTree is create by Atlassian which has a git hosting service BitBucket. SourceTree has most of the features of git and supports custom script. The problem is it has some annoying bugs like maximize window sometime cannot return to normal until you minimize, cannot update embdded git, etc. But overall, it is still a good client.

## GitKraken

Pros:

  • Good looking (I hate the large text on top though)

Cons:

  • Very limited git features
  • Not intuitive UI
  • Cannot open repository without first commit (It auto create a first commit for you when you create a new repository)

I tried out this client because I heard many talk about it. But I found that GitKraken is so bad that I rather use the git client in my JetBrain IDE. Cannot open repository without first commit and auto create a first commit for you when you create a new repository is stupid. You cannot even look at the difference with highlight the file. You have to double click and open a new window. This prevents you from fast navigating through files.

GitKraken has a paid version. But it only adds niche features. It definely not worth for a normal user.

Conclusion

If you are new to git or you only host your project on GitHub, then GitHub Desktop should be enough for you. If you want more advance feature like ammend, rebase, submodule, and etc, SourceTree is suitable to do the job. Both of them are free and you can try it out yourself.