GUI for GIT similar to SourceTree

Is there a similar piece of software to SourceTree, a GUI for git, for Linux? I know about Giggle, git cola, etc. I’m looking for a beautiful, easy to use GUI for git.

Asked By: Glen Solsberry

||

A nice alternative is SmartGit. It has very similar features to SourceTree and has built in 3-column conflict resolution, visual logs, pulling, pushing, merging, syncing, tagging and all things git 🙂

Answered By: neolaser

GitEye is pretty good stuff. Also, free (as in beer).

Answered By: thnee

One open-source GIT GUI whose interface isn’t positively scary is gitg. From the project’s website:

gitg is the GNOME GUI client to view git repositories.

enter image description here

Answered By: landroni

If you can use any JetBrains IDE (https://www.jetbrains.com/), I recommend you to do so. They have a pretty nice built-in GUI for git (and also other VCS)… maybe not so packed with features as other software mentioned here, but it does it job.

Also, qgit works for me. The only issue I encountered was when I tried to switch to a dark (white-on-black) GTK theme.

Answered By: zaantar

latest visual studio Code editor for linux has very smooth git integration.

https://code.visualstudio.com/Download

Answered By: Anand

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, 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
+ super clear list of changed/added files (list + diff detail)
+ each changed/added file can be committed separately
+ current branch clearly visible while commiting
+ 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 won't 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
+ super clear list of changed/added files (list + diff detail)
~ each changed/added file can be commited separately [UI not clear enough]
- current branch clearly visible while commiting
+ 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
~ super clear 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

Its 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. Its 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.

Answered By: allanlaal

GitKraken is the best GUI for linux on working with git. It free only for non-commercial use. No other GUI clients for linux match this as of writing this answer.

You should consider taking a look once.

Answered By: Mayur Padshala

Check GitHub Desktop for Linux: https://aur.archlinux.org/packages/github-desktop/

It allows working with non GitHub repos.

Answered By: numediaweb

I am aware that, this is a very old topic for an age old question. I just wanted to mention some points. First of all it seems that there still is not an as decent as SourceTree GUI for git exists in Linux. This makes one to appreciate the power and robustness of the actual shell interface. One option I wanted to mention is Eclipse’s git sub menu. While not as powerful as some alternatives, after trying out several GUIs, including ones mentioned here, Eclipse turned out to be the most reliable GUI in my experience, that is assuming you also are comfortable with git command line options for occasional conflict management etc. So give Eclipse a try, especially if you are already using it as development platform or are looking for one.

Answered By: Can Baysal

I tried all git clients for Linux, and they all suck someway or the other. But because my IDE is Visual Studio Code, I ended up using VSCode. I installed the following extensions:

  • Git Lens
  • Git Graph
  • Git History

The only thing is, that most of the functionality is under your right mouse click, but all of the functionality of SourceTree is there.

Git Graph (right) and Git Lens (left)

Git History (right) and Git Lens (left)

Git History Commit Detail

Git History (right) and Git Functions (left)

Answered By: Daantje

I recommend GitUi, a TUI programm
https://github.com/Extrawurst/gitui

Answered By: linuxistsuper

I’ve been using gitAhead for awhile, and I must say I’m pretty satisfied : easy to set up, easy to use and perform any git process. I have tried a few git clients, and I must say it’s one of the best (for me at least) I’ve tried. Not to mention GitKraken, but you can’t use it with private repos with the free version.

https://gitahead.github.io/gitahead.com/

Answered By: ThEBiShOp
Categories: Answers Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.