GitKraken vs Tower

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.

“GitKraken is exactly what I need because it makes the experience of using git the same on all three of my build platforms (mac/win/linux) without having to fiddle around with submodules in an annoying way I can just click and say ‘go get it please'”- @larsiusprime

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. 

Issue Tracking Integrations 

GitKraken ✅ | Tower ❌

Aside from the GitKraken Git GUI, no other Git clients offer robust integrations with the most-used issue tracking tools. Not a single one.

The GitKraken Git GUI integrates with the following issue trackers:

Users who utilize one of the above tools to manage their issues can accomplish the following actions directly from the GitKraken Git GUI: view, filter, and edit issues/cards, create branches tied to issues/cards, and create new issues/cards.

This can be instrumental for developers looking to optimize their workflow with reduced context switching.

Tower, by comparison, does not offer integrations with the issue trackers listed above.

Pricing

GitKraken 👍 | Tower 👎

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

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

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 just $8.95 per user per month (billed annually).Whether you’re a hobbyist, solo developer, or corporate team, GitKraken provides more features at a better price. Simple as that. 

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.

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

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.

The visibility offered by GitKraken is unparalleled, giving you the ability to quickly see all remote branches and activity on forked repositories.

Free, Accessible Git 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.

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 20 free Git tutorial videos on the GitKraken Learn site.

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 HunkInline, 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 Git 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. 

Psst: 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

Perform advanced Git actions, like interactive rebase, with confidence, speed, and ease with GitKraken, and fear rebase no more.

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 GitKraken Git GUI.

Simplify Git with GitKraken!

Legendary Git GUI for Windows, Mac & Linux