I'm a former windows user and just started using ubuntu. On windows, we had two great softwares: TortoiseSVN and TortoiseGit. Both are so good programs that they allow us to do everything like commit, rollback, merge, view history, browse repos, etc. without knowing a SINGLE cli command.

Now on linux, I'm finding it difficult to do memorize git commands for everything. git push and git remote add is fine. But merging is tedious especially conflict-resolution. In TortoiseGit, it is simply a matter of a few right-clicks!

I've found some crap like git-gui, etc. but the features are nothing comparable to TortoiseGit. Why isn't there any fully-fledged TortoiseGit port on linux systems?

  • Conflict resolution can be done with git mergetool. I prefer the meld GUI as the mergetool. – jordanm Jul 12 '14 at 0:34
  • 2
    SmartGit/Hg is pretty easy to use, but it is only free for non-commercial use. – n.st Jul 12 '14 at 0:34
  • Yes, SmartGit/Hg would be a good option. Getting more popular. – beginer Jul 12 '14 at 0:38

The GIT project maintains a page with all the GUIs available for all platforms both free and commercial. I'd list them all here but it's a pretty extensive list with screenshots and descriptions.

GIT also comes, typically with 2 GUIs. You can run them as follows:

$ git gui

             ss #1

If you're in a GIT workspace that you've cloned locally you can use gitk to browse it:

$ gitk

    ss #2

NOTE: If they aren't installed you can install them, typically, with these package names:

- git-gui
- gitk

Other options

From the GIT page there are these options that are free for Linux.

        ss #3

        ss #4

        ss #5

        ss #6

        ss #7

tl;dr: GitEye = most intuitive UI, fastest workflow, highly customizable


I'm a long time TortoiseHg Workbench poweruser and I love it, so naturally my completely opinionated criteria were mostly based on it:

* full history visible in main window
* beautiful tree (DAG), branches CLEARLY separated
* current branch clearly visible in history
* superclear list of changed/added files (list + diff detail)
* each changed/added file can be committed separately (or in groups)
* current branch clearly visible while committing
* clear push/pull etc buttons
* shelve = stash {not to be confused with patches}
* revert
* graft = cherry pick
* max git features
* HiDPI support
* all changes become visible on refresh
* refresh shortcut

I tested the following apps:

  • git-cola
  • GitEye
  • GITK
  • git-gui
  • QGit
  • giggle
  • tig
  • SmartGit
  • gitg
  • RabbitVCS
  • GitKraken
  • GitX
  • git-dag
  • Bazaar Explorer + bzr-git
  • TortoiseHg + hggit (best UI, hggit doesn't work)

Results

Most of the tested git GUI clients are complete ****, below are 2 of the best and 1 that is not as **** as others.

Legend

- = feature missing or so **** it doesn't count
~ = feature somewhat matches my requirements
+ = feature works like I want :)

1st place: GitEye

most intuitive UI, the fastest workflow, highly customizable

~ full history visible in main window [in a separate tab, same UI pattern facilitates looking at the history of separate files]
+ beautiful tree (DAG), branches CLEARLY separated
+ current branch clearly visible in history
+ superclear list of changed/added files (list + diff detail)
+ each changed/added file can be committed separately
+ current branch clearly visible while committing
+ clear push/pull etc buttons
+ shelve = stash [Stashes clearly visible in sidepane]
+ revert
+ graft = cherry pick
+ max git features
~ HiDPI support
+ all changes become visible on refresh
- refresh shortcut [you can set one, but it wont work. bug?]

Note: if the Git Files view stops working on you, then use the similar Git Staging view.

2nd place: SmartGit

beautiful integrated file diff. committing unclear, history hidden, requires a license

~ full history visible in main window [separate window, I found myself constantly confusing both windows]
- beautiful tree (DAG), branches CLEARLY separated
- current branch clearly visible in history
+ superclear list of changed/added files (list + diff detail)
~ each changed/added file can be committed separately [UI not clear enough]
- current branch clearly visible while committing
+ clear push/pull etc buttons
+ shelve = stash 
+ revert
+ graft = cherry pick
+ max git features
+ HiDPI support
+ all changes become visible on refresh [refreshes automatically]
+ refresh shortcut [refreshes automatically]

3rd place: QGit

beautiful clear history, commit UX messy, lightweight, custom commands can be added

+ full history visible in main window
+ beautiful tree (DAG), branches CLEARLY separated
+ current branch clearly visible in history
~ superclear list of changed/added files (list + diff detail) [doesn't show new files in main window]
- each changed/added file can be committed separately
- current branch clearly visible while committing
~ clear push/pull etc buttons [could be added via custom commands]
- shelve = stash 
- revert 
- graft = cherry pick
- max git features
+ HiDPI support
~ all changes become visible on refresh [except for new files]
+ refresh shortcut

Honorable mention: GitKraken

It's still in its development phases (1.5.1 is still missing HiDPI support), but gets basic work done. This could easily compete with GitEye and SmartGit. It's better than QGit for sure.

All the rest:

I am disappointed by the type of **** made to pass as a git client. I guess their authors think it's more efficient to do everyday simple things on the command line and they have based their clients on that inefficient workflow.

  • Links to the relevant sites would be handy! – G Forty Feb 3 '16 at 18:27

The main two basic gui clients I rely on are gitg for Ubuntu and gitx for OSX

gitg shown below:

enter image description here

gitg: https://apps.ubuntu.com/cat/applications/gitg/
gitx: http://frim.frim.nl/GitXStable.app.zip

I'm on the team that develops GitKraken, so I'm a little biased, but I'd highly recommend you check it out. It works on not only Linux, but also Windows and Mac too and it comes with some other unique features including undo/redo, indexed search and a responsive, intuitive design.

  • Can you post some screenshots? "Request a beta invite" on the website isn't all that informative. – simonzack Jan 7 '16 at 16:18
  • @simonzack Sure! Let me know if you have any more questions, I'd be happy to answer them. – Chris Jan 7 '16 at 20:44
  • As of version 1.7 it is not free for commercial use so I would NOT recommend gitkraken. Used it before and it was ok – nexayq Oct 6 '16 at 9:19

Here is one more, though it's not free: https://gitblade.com

It's still in beta as of this writing, but supports most of the basic Git features - preview changes, commit, pull, push, view history, branches.

enter image description here

rabbitvcs-nautilus is fully integrated and it's a plugin for nautilus.

  • I wouldn't say it's official in any kind of capacity. It's an option though. – slm Nov 25 '14 at 12:41

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.