By Oleg Andreev
Open the Mac App Store to buy and download apps.
Gitbox is a simple yet powerful Git repository manager.
Important: to make FileMerge work with the latest Xcode, read the instruction: http://gitboxapp.com/
• Full text search in commit metadata, file paths and diffs.
• Full support for pull, fetch, push, stash, rebase, branch reset, tagging and checkout.
• Automatic fetch from remote servers.
• Visual diff between branches.
• Integration with popular diff tools (Kaleidoscope, Changes etc.)
• Submodule support and automatic submodule updates.
• Color tagging for commits (better than "git bisect").
• Drag and drop file from history.
• Quick Look for files in history.
• Instant sync with the file system, smooth integration with Terminal.
You can clone, push and pull using usual protocols supported by Git (including HTTP). Repositories and clones on the local and networking filesystems are also supported.
Gitbox is powered by the standard build of Git 1.7 which is protected by GNU General Public License Version 2. Gitbox neither links (statically or dynamically) with Git nor uses specific APIs to work with Git. You can obtain Git source code at the following address: http://git-scm.com/ According the GPLv2 section 3.b, if you want a copy of source code for the bundled Git, I can provide it on a physical media for the cost of production and distribution. See Legal Info in the app for details.
What's New in Version 1.6.3
• Improved performance of updates of git state (stage, branches, commits and submodules).
• Fixed bug when cloning from a URL with spaces.
• Fixed several error messages.
• Fixed bug with submodule paths containing spaces.
• Fixed commit cherry-picking and merging from the search mode.
• Fixed bug with launching FileMerge after installing Xcode 4.3 and removing /Developer folder.
• Prevented window activation when minimized and repository optimization kicks in.
• Fixed window activation when clicked through after closing FileMerge window.
• Improved error messages for merge failure.
New in version 1.6:
• Zero-configuration submodules: one-click download and reset.
• Submodules are intelligently reset when pulling, switching branches or checking out commits in the parent repository.
• Editable repository names (Gitbox keeps an alias without changing the actual folder name.)
• Automatic repository optimization in background.
• Tags are sorted in natural order and with respect to version numbers.
• When a file is added to ignore list, it is also untracked (git rm --cached).
• Warning is displayed when trying to make a commit when no branch is selected.
• Single Preferences window with Git configuration, ignored files, "Clone from Github" checkbox etc.
• Fixed bugs and crashes in authentication session.
• Fixed performance bug with frequent stage updates (high CPU consumption).
• Fixed bugs with preserving stage selection and scroll offset when stage is reloaded.
• Fixed bug with text fields in repository settings (value was not stored immediately)
• Fixed a bug with trimming whitespace from .gitignore
• Fixed link highlighting: now all kinds of schemas are recognized including rdar:// (Lion-only).
• Fixed several text labels and error messages.
• Fixed an annoying bug in search field (when space is entered, all text was selected)
• Fixed bug with presenting files containing ":" and other URL-unfriendly characters.
• Fixed bug with staging file names beginning with dash ("-")
• Fixed bug with multi-line commit messages. Messages are recorded as-is. Prewrapped messages are intelligently unwrapped when displayed.
• Fixed bug with ignoring a file when .gitignore does not exist (file was not added to .gitignore).
• Fixed bug with title duplication in the branch menus.
• Fixed merge --no-ff option. Gitbox shows no-ff merge commits and respects “mergeoptions” in .git/config.
• Fixed sidebar alignment bug.
• Fixed sidebar spinner color and animation.
Its great when you know git well, too
Its great that from reading the reviews people who don't know git well can use this app and get more out of git. For those who know git fairly well this app can also be an invaluable tool.
Its super transparent what the app is doing at the git level. It makes commiting and pushing easy but when you need to do something more complex the app can also manage this without having to look up some of the less frequently used git commands. You can undo a commit or a push with CMD+Z if you make a mistake. You can merge branches, branch and then turn it into a tracking branch, branch, pull from origin and push to another remote with very little effort. I use this app every day, yet I don't spend all my time using it; it's the simplicity that means it doesn't get in my way.
The support documentation for this app is sparse, however, and when merge conflicts happen the way it stages them makes it unclear which versions you are diffing. The app is getting updates which means these small issues can be ignored. Its definitely worth 5 stars and your money!
Exellent Git client
I have no problem working with Git on the command line, so for me having a client is more a matter of process. I may have any number of iTerm tabs open (with any number of splits) at any given point and locating the one I need in order to stage and commit is sometimes a chore. However the Git client landscape generally isn't too pretty. I've tried most of them (GitX, GitY, Gitnub, Github, Versions etc.) and I haven't yet found one that stuck.
Gitbox however is a pleasure to use and fits into my workflow very nicely. In fact compared to most of the other clients I've used, I was pleasantly surprised to find I can do most things I need to without dropping to a terminal. The "Open XCode project" feature is a nice touch. Repository groups are nice too.
I only have a couple of complaints, but given the attention to detail in Gitbox overall I suspect they'd be addressed.
In short: this app will save me time and effort; worth every penny.
Great app, great workflow and clarity. One minor annoyance.
Great workflow, deeper functionality than meets the eye. This app has been steadily improving release after release and every new feature implementation appears clean and unobtrusive.
It really makes Git look like a an easy tool, while still enabling access to rather advanced features.
One issue I am encountering is that on some (NOT ALL) repositories which contain submodules, Gitbox is unable checkout / select any branch in the submodules. The main repo works fine though. But I need to go to Terminal to commit changes in the submodules, which kind of spoils the fun. It may be a problem with my Git or a problem with Gitbox, but until now I wasn't able to solve it, and I didn't get any feedback from the dev. If the dev is reading this I'd be grateful if you could get in touch. The emails I sent have the subject "Unable to checkout branch".