Although I believe developers should learn
git on the command line, graphical tools can be useful, especially for inspecting history. Last night a friend showed me a new one (below), so I thought I would list my favorites in this space.
I have been using GitX since around the time I purchased my MacBook in mid-2012. GitX is simple to use and is mostly focused on reading git repository, though it does facilitate creating new commits. I love it's (mostly) simple interface and that it almost never crashes. At work I switch among several repos at once, and GitX handles a window for each of them with ease. It works so well, and I almost never have to think about it. 4.3/5 stars.
However I have some issues, the first being a complete project abandonment. It was originally developed by Pieter de Bie (project website), but he hasn't updated it over a decade. Several forks have come and gone since then, and they all seem to be abandoned too. I use the most recent fork (GitX-dev). GitX-dev has a few more features over the original, but it too is abandoned.
Both GitX and GitX-dev are available via Homebrew. I recommend the latter:
brew cask install gitx # GitX brew cask install rowanj-gitx # GitX-dev
Xit began as a rewrite of GitX. It is currently being actively, though slowly, developed. I downloaded it to check it out a while ago, and its GitX heritage is pretty obvious. I am certainly going to keep an eye on it, but as the project is in beta, I haven't felt much need to switch yet. The developers consolidated GitX's stage/commit area into the main area, and they removed the familiar keyboard shortcuts. I'll take another look after they are confident to bring Xit out of beta. 3/5 stars, but we'll see.
Fork (also?) is another tool similar to GitX. Unlike Xit Fork doesn't claim any lineage to GitX, though it obviously has taken significant design inspiration from it. It doesn't appear to be open-source software, but it is cross-platform (macOS and Windows). It feels fresh, stable and polished, and the maintainers are actively developing it.
This is the "new" graphical tool I mentioned above, so I don't have much experience with it. However my first impressions is very positive. I can launch it from a repository directory on the command line. It has similar (to GitX) keyboard shortcuts and a large dedicated stage/commit area. 4/5 early stars.
I doubt GitX is going to fall out of regular usage (muscle memory, inertia), but I would love to switch to a new, actively developed too. Assuming I can remember to use it regularly, and it provides the same features I rely on GitX for, Fork is the strongest contender. It has all the features I could think of off the top of my head. I plan to write a bit more about tooling in the future, so hopefully I can feature it then. 🤞