GitKraken vs Tower
Development

GitKraken vs Tower

How do the two Git GUIs compare?

The increasing popularity of Git in the software industry has led to the introduction of numerous tools designed to make the version control experience faster and more intuitive. The most notable tool for enhancing a developer’s Git workflow is a graphical user interface (GUI). 

Most Git GUIs on the market today offer a variety of features for simplifying Git commands into quick actions; many also have a heavy focus on making collaboration easier. Here’s why the GitKraken Git GUI is more popular than Tower.

Linux Support:

GitKraken ✅ | Tower ❌

As one of the only true cross-platform Git GUIs on the market, GitKraken is proud to offer Linux support. Tower, by comparison, cannot be used on Linux. 

Cross-Platform Consistency:

GitKraken ✅ | Tower ❌

GitKraken offers a seamless and consistent experience regardless of which operating system you choose to utilize. This is possible because GitKraken is developed on Electron.

It is far from uncommon for individual developers working on a team to prefer different operating systems; one likes Mac while the other swears by Linux. Trust us, we get it. Having a tool that is OS-agnostic will allow you to train your team faster with less overhead and makes it much easier to collaborate with a colleague who prefers a different operating system. 

Furthermore, because the GitKraken team is only developing one cross-platform Git GUI, rather than three disparate tools specific to an OS, we have the ability to release product improvements and new features more frequently. 

Pricing:

GitKraken 👍 | Tower 👎

The pricing model for GitKraken is more flexible and affordable than the pricing model for Tower.

GitKraken Pricing

GitKraken offers a free license for use on publicly-hosted repositories; Tower does not offer a free version of their software.

With the GitKraken v6.0 release in June 2019, we announced some significant pricing changes, including the introduction of the Individual Plan, priced at just $29 annually. Not only does the Individual Plan come with all GitKraken core features, it also includes our legendary Merge Conflict Editor.

That’s less than $2.42 a month for the most robust Git Client on the market!

Let’s compare this to Tower, which has no free version and charges $69 per year for their basic license, which is “ideal for single users.”

Tower Pricing

Even GitKraken’s most expensive license—GitKraken Enterprise—starts at $99 per user per year.

If you’re ready to make the switch, get $20 off a GitKraken Pro license now!

Make the Switch

Free for Open Source: GitKraken ✅ | Tower ❌

Not only does GitKraken offer a free trial of our paid licenses, we also offer a free version for use on publicly-hosted repositories. Our free license comes with the core Git GUI features.

Free for Nonprofits: GitKraken ✅ | Tower ❌

GitKraken understands how crucial it is for nonprofit organizations to have access to the highest quality tools without affecting their bottom line. We want to be a part of supporting the incredible things nonprofits are accomplishing through software development.

GitKraken is proud to  offer GitKraken Pro licenses free to nonprofit organizations through our Pro for a Cause program.  We’re honored to support organizations like Children’s Miracle Network Hospitals, Goodwill of Arizona, European Court of Human Rights, and more in making a positive difference in the world! 

By comparison, Tower does not offer discounts to nonprofit institutions.

GitKraken also offers our Pro license FREE to students and teachers through the GitHub Student Developer Pack.

See GitKraken Founder Hamid Shojaee explain why providing GitKraken free to students and teachers is important:

Included Updates in Every Version: GitKraken ✅ | Tower ❌

If you have a GitKraken subscription, regardless of what license you’re on or when you purchased, you will be prompted to update your application upon each new software release.

Through Tower 2.0, buyers were required to purchase an individual version. So Tower 1, Tower 2, etc. And when there was a new release, Tower customers could purchase the newest version at a 50% discount. 

Tower 50% Upgrade Discount

Banner from Tower website advertising upgrade pricing in March 2020.

While Tower is now exclusively offering their product via an annual subscription model, the confusing license structure of the past continues to most prominently affect their legacy customers. 

GitKraken avoids all of that confusion by making our software updates available to every user, no matter what license you purchased.

Plus, our frequent release cadence and humorous release notes are yet another area where we blow Tower out of the water. See our full release history via GitKraken Timelines.

Free, Accessible Educational Content:

GitKraken ✅ | Tower ❌

The GitKraken team is proud of the educational content we provide; it’s completely free and accessible to all. We don’t gate our content or ask for any contact information to access our materials and resources.

Checkout our extensive Git educational database featuring free videos, tutorials, cheat sheets, and more.

Learn Git with GitKraken

No doubt, Tower also has a thoughtful compilation of Git educational materials on its website, and the vast majority is offered for free.

However, if you want to download any of their cheat sheets, you’re required to submit your email address and subscribe to communications.

Tower Gated Content

GitKraken offers all of our learning Git video tutorials on our website and YouTube channel completely free of charge, no matter the experience level. By comparison, Tower charges for some of their educational content. At GitKraken, we aren’t in the business of for-profit education.

Tower Educational Fees
Tower advertising prices for educational packages on their website (March 2020)
Access nearly 100 free videos for learning Git online on the GitKraken YouTube channel.

Commit Graph UI:

GitKraken 👍 | Tower 👎

Behold, the beautiful technicolor commit graph displayed by the GitKraken Git GUI. 

GitKraken Commit Graph

Electron public repo displayed via GitKraken

The GitKraken commit graph was designed to make navigating your commit history as easy as possible, and does so by not only looking good, but by improving many readability issues found in other Git GUIs, like Tower.

Tower Commit Graph for Comparison

Electron public repo displayed via Tower

While Tower attempts to save space by condensing its graph, this can create a tangled mess of branches that are difficult to follow, and introduces issues with scanning commit messages and finding branch names by throwing them out of alignment.

In GitKraken, each branch of commits gets its own column in the graph and the branch names are listed in a column to the left. This makes locating a branch, following its commits, and finding commit messages much easier because all text is left-aligned, as one would expect when reading a long list. 

Additionally, GitKraken allows you to resize the graph to optimize your display for larger repos with numerous branches, always keeping the commits cleanly lined up. 

resizing graph

Working Copy & Project History in Graph: GitKraken ✅ | Tower ❌

GitKraken’s graph allows users to see their work in progress (in GitKraken, this is called the WIP) inline with the rest of the project. This means you can view (and edit!) the contents of your WIP in the same view as you can view the changes in any other commit in your project history.

WIP in GitKraken

Tower, on the other hand, separates a user’s “Working Copy” into a separate tab. This forces developers to switch context and jump to a new display anytime they want to see how their code will influence the project as a whole. 

Tower Working Copy

Side by Side Diff:

GitKraken ✅ | Tower ❌

GitKraken’s built-in Diff Tool is one of our users’ favorite features, giving you the ability to quickly see what has been added to or removed from a file. Our tool allows you to choose individual lines or hunks of a file to stage. 

GitKraken’s Diff Tool allows users to easily toggle between Hunk, Inline, and Split views, and includes word diffing, syntax highlighting, arrows to move between change sets, and more. 

GitKraken diff-views

Drag and Drop Actions:

GitKraken 👍 | Tower 👎

GitKraken and Tower both provide users the ability to perform drag-and-drop actions, though Tower’s functionality is a bit limited. 

With Tower, you can create, pull, push, and merge branches, and initiate interactive rebase (to be exact, for squashing, reordering, and fixup). In GitKraken, you can drag-and-drop to initiate interactive rebase or create a pull request (after setting up the integration to the related hosting service). 

While it is true that you can initiate an interactive rebase using drag-and-drop in Tower, the experience of performing this action is far less intuitive than in GitKraken.

First and foremost, Tower users cannot perform an interactive rebase, or any other previously mentioned drag-and-drop actions, while in “History View,” aka the view that shows you the history of all branches within the repository. This is the central graph that GitKraken displays in the main interface (where all of our drag-and-drop actions are possible).  

So, how do you initiate an interactive rebase using drag-and-drop in Tower? You must first select a branch in the left panel, which switches the graph’s context to focus only on that branch. Then you can drag-and-drop commits to squash, reorder, and fixup. However, only one of those operations can be done at a time for the selected commits. 

tower-interactive-rebase

Performing an interactive rebase in Tower

😅It took us a while to figure this out, and Tower’s support documentation is lacking in the interactive rebase department and did not provide direction. Let’s compare the experience in GitKraken. 

Get clear step-by-step instructions on using the Interactive Rebase feature in GitKraken on our support site. 

In GitKraken, users can easily initiate an interactive rebase by dragging-and-dropping one branch onto another branch from the central commit graph without context switching or altering the interface. 

interactive-rebase-gitkraken

Performing an Interactive Rebase in GitKraken

Another meaningful difference between Tower and GitKraken when it comes to drag-and-drop is accessibility. In GitKraken, you can perform a drag-and-drop action from our Left Panel, the central Graph, and between the two. 

The ability to drag-and-drop between the graph and the left panel in Tower is extremely limited and not intuitive. For example, you can drag a commit—again, only when you have a specific branch selected in the left panel—onto the “Branches” header to create a new branch, or initiate a cherry-pick onto the same branch. Tower users do not have the ability to drag branches out of the graph, because drag-and-drop only works on commits when one branch is selected; this makes the operations you’re able to perform with drag-and-drop in Tower very limited.

tower-dnd-graph-to-left

Drag-and-drop functionality in Tower

Case in point: you are not able to drag a branch out of the graph onto another branch in the left panel to merge, rebase, etc, as you can do in GitKraken. 

gk-dnd-leftp-graph

Drag and Drop Functionality in GitKraken

Merge Conflict Resolution:

GitKraken 👍 | Tower 👎

Both GitKraken and Tower offer tools for in-app merge conflict resolution, but that’s about where the similarities end. 

If you encounter a conflict when attempting to perform a merge in GitKraken, our tool will display the conflicting files in the right Commit Panel. Clicking on a conflicted file will open our merge conflict editor, showing the current branch on the left, the target branch on the right, and an output field at the bottom. 

GitKraken-merge-tool

From the tool, users can select all changes in a file, individual sections of changes, and even individual lines, all of which are displayed with an accompanying checkbox. Checking a box adds that piece of code to the output field, allowing you to easily see the options in context and decide which is preferable. Alternatively, paid users can edit in the output field directly. After you’ve resolved the conflict, simply save the output and commit your changes. On to the next step in your workflow. 

By comparison, the experience of resolving a merge conflict in Tower is extremely limited. The Tower team seems to agree, pushing people to use external merge and diff tools in place of their own. 

Tower advertises a “Conflict Wizard” which does, in fact, alert you when a conflict occurs between files. However, the tool is severely lacking in contextual information. In short, Tower gives you the option to either select one of the two conflicting files or combine them. 

Tower Merge Wizard

You aren’t able to review the code changes or pick and choose changes from multiple files without opening an external tool in Tower. Tower’s Conflict Wizard is really only helpful if you’re already sure that either “my version” or “their version” is what you want committed.

Ready to make the switch? 

Now that we’ve made a convincing GitKraken vs Tower argument, we hope you will consider making the switch. To further incentivize you to take action, we’re offering $20 off GitKraken Pro for anyone switching from Tower to GitKraken.

Stay on the cutting edge of software development by getting innovative tips, trends and stories delivered to your inbox every month!

Agile project management software
Plan, develop, review, and ship fast

Visit Axosoft.com

Legendary suite of developer tools
GitKraken Git GUI, Boards & Timelines

Visit GitKraken.com