Tower Gits It Done

As most programmers are already aware, Git is a very powerful open source version control system. There are a handful of popular version control systems (VCS) to choose from, but most power users lean toward Git or Subversion (SVN). Schools of thought vary on which is best, but it is universally accepted that professionals of all kinds can benefit from a good version control system. Even for those who don’t write or program professionally, a good VCS can help catalog changes in all sorts of personal projects. Launching into Git for the first time, however, might not be the most pleasant experience for the average first-timer.

Tower changes that and makes Git a tool that everyone should have loaded up in their repertoire.

What is Git?

For someone to appreciate Tower, they must first understand what Git actually is. Git is a decentralized version control system. Compared to other systems, like SVN, Git does not require a centralized hub (or workflow) to utilize all of its functionality. In layman terms, Git keeps track of changes to files so that you can review, share, merge or even revert them later. It allows users to make comments on a particular set of changes creating a documented timeline for historical review. Git is lightweight and fast. That speed originates from its data management and local operation. Without the need for a network connection to a centralized server, actions within Git really move in comparison to other version control systems.

How does Tower help?

If you are new to Git, the general consensus around the user community is to learn the functionality from the command line. Although this certainly educates most users on the capabilities of Git, it can create a steep learning curve for others. Tower is a visual interface for Git. Tower is a beautiful application that is fast and incredibly easy to operate right out of the box. Tower’s visual approach to Git makes the more complex tasks as simple as drag and drop. Most users will also appreciate that Tower is actively maintained by its developers as well. I’ve never actually had to contact them for support, but regular updates to the software have kept it running smooth and problem free. Lastly, Tower has a decent help section within the application. The Tower developers explain how to use the software while mixing in the “whys” to connect the Git dots.

After launching Tower into a repository, you will conveniently see most of the common operations that you will be using. You can see, for example, modified or deleted items as they relate to the repository. You can also switch from different branches, pull or push from remote repositories, and view histories of files and their changes.

Tower Main Status Window

Tower Main Status Window

Another powerful feature of Git is its branch management. Historically, a branch within a VCS meant a headache whenever it was time to merge those changes later. Git changes all of that with its exceptional branching model. Not only are working within branches a snap, but Git actually encourages users to make use of the feature as often as they need. Tower brings a visual element to Git’s powerful branching functionality. Creating a new branch is simple, and switching between branches is done with a double-click of the mouse.

Tower Drag and Drop

Tower Drag and Drop

The drag-and-drop philosophy implement by Tower is almost as powerful as its visual element. For example, you can drag and drop specific changes within a staged file to build very explicit commits. This can be hard to appreciate, but being able to commit a block of code (or content) contained within a specific file is truly mind-boggling for most old-school version control users. Drag and drop operations don’t stop locally – you can even drag and drop repositories from remote locations and back again.

Tower Custom Commits

Tower Custom Commits

Having a version control system is also about storing and reviewing your changes. In team environments it becomes important to understand why a user made a particular change. Within Tower, just click on the commit tab and begin reviewing organized commits. You can see who committed what, which modifications were made, and even export those changes if necessary.

Tower Commit Log

Tower Commit Log

Tower isn’t without its small share of issues. To be fair, those issues pale in comparison to all of the benefits that Tower brings to the table. One thing I can’t seem to get past, is the check-in dialogue in the main status area. Filling that form out just pastes that text into a subsequent confirmation window where you then have to confirm and click commit – again. It would seem to me that you should be able to execute complete commits on that main window without a separate confirmation popup. Tower isn’t the least inexpensive Git application on the market either. Some people wouldn’t even give Tower an opportunity to shine due to its current $59 price tag. I would suggest that before turning a cold shoulder, new users take Tower for a test drive with their free 30 day trial.


Tower is clearly, as they put it, the most powerful Git client for Mac. Its features are vast and the implementation is simple and effective. Through its visualization and drag and drop features, new and power users can skip the command line and get right down to business with Git. It is a beautiful application that warrants a place in virtually every Mac toolbox.


Tower is a powerful Git client for Mac.



Add Yours
  • Looks like a good tool even though i use Git via terminal but when it comes down to some complicated git magic, this could be really interesting.

  • Just wondering how you arrived at the $47.20 price tag? I go to checkout and it’s $59+VAT.

    PS – the link to the Tower website is broken, it should be

    • Thanks, Luke. Not sure about the price, but I just got it and the links fixed. Sorry about that!

  • I used Towers’s 30 day trial and it’s a good app, but IMO GitHub for Mac is easier for beginners. I guess the power users are comfortable with the command line, so I don’t understand who is this app for, because for Subversion, I think the leader app is Versions app, or I am wrong?

    • Nop. Versions is a SVN client. Only SVN, not git. And the official github mac client, only works for github repos (at least, AFAIK), so, if you want a private repo and don’t want to pay, or you don’t want to use github the github client is not for you.

      Tower is fine, i used it when it was in beta, but i prefer the command line

    • Only thing is …. Github for Mac is an appaulling application. Sure, it’s free and complaining is pointless, but you can’t do basic stuff like ignore or discard all … and randomly it’ll ignore the gitignore info and you have to fix it repeatedly or ignore/discard potentially hundreds of files. Maybe I’m just missing something but damn. So I will check Tower out immediately! :)

  • A great and free alternative to Tower is Source Tree. It’s available for free in the Mac App store, and offers quite a few features that Tower doesn’t. It might be worth a review too!

  • SourceTree is free. It’s not the prettiest, but it is pretty powerful. I just can’t see spending $47.20 on a Git app when command line and SourceTree should be all most people need.

    • The pricing kills it. I managed to get it super cheap right after it left public beta. They had a special offer for those who used the beta version and they also let me use their 50% student discount on top of that. I love the app, it makes managing git repos easily and make it easy to check things before committing. However, I would never pay the $60 they want for it. That’s way too expensive. If this app was $15 then it might have more weight.

    • Well.. I think we can rightfully say that Windows platforms are pretty powerful too. Anyway… we are all Mac users here. I can just talk for myself of course, but I think that it’s pretty common for a conscious Mac user to understand that beauty leads way beyond cosmetics.

  • I really want to like Tower, and I admit it’s the most powerful among alternatives. Anyway, I really don’t like the interface, with plenty of wasted pixels and white space. I think the UI is not well conceived at all. Then, I think it’s biggest flow is that it’s slooooow… I mean, incredibly slow at loading commits.
    Actually, I think it just can’t compare for speed and simplicity to Gitbox. Ok then, Gitbox is pretty much bare-bones… anyhow… Tower needs Gitbox speed, as Git itself is built for speed, and Tower is not.

    @Jesus: You told @Natalia to be wrong just to tell what she said. I guess she is intending SVN by Subversion.

    @Natalia: I’m not sure Github is easier, but certainly can do everything worth it in less than half the pixels and twice the speed. Also, I think Cornerstone is a much more robust alternative than Versions.

    • If her comment went to subversion, then versions is an option.

      • Actually “Apache Subversion (often abbreviated SVN, after the command name svn)”

  • Sorry, I told you that Gitbox was minimal…

  • Tower: 10% off with code MACOUN12. valid until 11/30/12.