Since moving to Linux, I’ve also moved to Git (from SVN) and have found it to be a reliable friend that, as a technology, is a significant step up from SVN. But, as a usable productivity tool, I definitely felt the sting of Git’s “hardcore h4x0r” roots in its lack of a GUI that is in the same league as Tortoise SVN.
But there is hope. And it comes from the unlikeliest of sources: my IDE, Rubymine.
Rubymine’s Git integration is superb. It supports hierarchical browsing of your current branch, in exactly the manner of Tortoise. It also offers:
- Directory-based, graphical means to be able to revert changed files or directories
- Ability to see a history of changes to a file (and return to an older specific version, if desired) along with one-click access to visual diff
- Ability to mass merge files in different branches by batch selecting them and choosing a merge method (i.e., “Use branch A version” or “Use branch B version”… it also supports manual merging via a graphical merge tool)
- One click comparison of your current file to the current repository file
In a nutshell, nearly all of the efficiencies that TortoiseSVN provided as a graphical source control tool for Subversion, Rubymine provides for Git. With one exception — that I have implored the creators of Rubymine to consider adding — the ability to see the history for a directory (rather than a file) within your project. Knowing the crack team of Rubymine developers, the feature will probably be on the way soon, but even before its arrival, they’ve still managed to build the best pound-for-pound Git graphical interface I’ve been able to uncover.
For windows there is TortoiseGit project with the same functionality as TortoiseSVN do (http://code.google.com/p/tortoisegit/). Before ruby on rails age I used to use TortoiseSVN. Now I am on awesome Rubimine and I don’t feel any necessity in TortoiseGit.
Is Rubymine on Linux reliable?
Git comes with a GUI called gitk (still pretty h4x0r oriented). If you’re on a mac there is an opensource GUI called GitX (more user friendly and polished) which is excellent.
@Vladimir: IMHO Rubymine on Linux is God’s gift to GUIs. I think it might be my single favorite development tool I’ve ever used, and I’ve used a lot of them over 10 years of programming many languages.
And I give it that endorsement even as there are a handful of issues that I’ve lobbied the Rubymine creators to tweak around. Even with some imperfections here and there, Rubymine is still the best Ruby GUI I’ve ever used by a factor of… lots. (For perspective: I think Visual Studio is the second best GUI I’ve used, though it’s pretty weak when it comes to Ruby, even with using Ruby in Steel)
@Justin: Thanks for the tips. I’m on Linux, so I don’t think GitX is available. I have Giggle and Cola installed, but neither are much more useful than the command line. (And both pale in comparison to Rubymine as a Git tool)
@Bill
I agree with you about Rubymine. I was happy when I’ve discovered this tool and I like its integrated railscasts theme (just for pleasure). Now I think about moving to Linux as you did.
I like SmartGit as a GUI for git
Hi, how to install this tool on Ubuntu?
Thx, greets.
Git Gui is one of better GUI for Git.
@Arno nyhm
The upcoming version 3 of SmartGit raise the bar of git GUI really high. We use a rebase workflow, so it’s nice to have a gui that allow more advanced feature, like rebasing, squashing, edit a commit message, undo a commit, manage multiple remote, etc …
The diff tool is also really nice.