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 now offers Git novices and pros a consistent experience across Mac, Windows and Linux. And makes Git operations not only performant and efficient, but understandable, visual, and perhaps even just a little bit fun! In this article, I want to show you some information about GitKraken, a tool that allows us to fulfill these purposes in a graphic and simplified way. What is GitKraken about? It is a powerful and elegant multiplatform graphical interface for Git developed by Axosoft, as an alternative to the command line. In a very simple way, we can keep a. With Gitflow initialized in your repo, you will get an additional menu in the left panel. Start or finish any of your Gitflow branches here. Create new Gitflow branches by clicking the green button on the Gitflow menu on the left. Or whenever you add a branch, include the prefix for the Gitflow branch type i.e. GitKraken Git GUI 7.x GitKraken Git GUI 6.x GitKraken Git GUI 5.x GitKraken Git GUI 4.x GitKraken Git GUI 3.x GitKraken Git GUI 2.x GitKraken Git GUI 1.x GitKraken Git GUI Beta GitKraken Boards GitKraken Boards Quick Start Board Features Board Security Card Features Calendar View.
GitKraken ✅ | Tower ❌
'Git Config Default' option was selected there and I could only choose 'None' or 'Git Config Default' options. I installed Meld for using it with GitKraken, and after that I tried to follow these steps to make it usable within GitKraken's interface, but GitKraken's merge tool choice options haven't changed.
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.
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.”
Even GitKraken’s most expensive license—GitKraken Enterprise—starts at $99 per user per year.
Whether you’re a hobbyist, solo developer, or corporate team, GitKraken provides more features at a better price. Simple as that.
If you’re ready to make the switch, get $20 off a GitKraken Pro license now!
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.
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.
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.
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.
Commit Graph UI:
GitKraken 👍 | Tower 👎
Behold, the beautiful technicolor commit graph displayed by the GitKraken Git GUI.
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.
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.
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.
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.
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.
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.
😅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.
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.
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.
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.
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.
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.
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.
Release the Kraken and kiss Tower goodbye. If you’re ready to make the switch, get $20 off a GitKraken Pro license now!
Stay on the cutting edge of software development by getting innovative tips, trends and stories delivered to your inbox every month!
Whether you are a newborn or a wizened deep-ocean octopod, each user will need to open, clone, or initialize a repo in GitKraken.
Setup
The essential setup process includes:
- Installing GitKraken
- Creating an account and setting up your profile
Once this is complete, you are ready for your oceanic journey!
Projects in GitKraken
There are three ways to start a Git repository when working on a project:
- Open - Open a local Git repository already initialized and available locally.
- Clone - Clone a remote Git repository already initialized.
- Init - Create an empty Git repository or reinitialize an existing one.
Opening an existing project
GitKraken allows you to load your existing repositories and pick up where you left off. It's also useful for visualizing past work done.
If you're coming from a Git project you already have locally, navigate to File Open Repo to get started immediately in GitKraken.
Cloning an existing project
If your project is not on your local machine or you want a new copy, clone the project through File Clone.
This will then prompt you to open the newly copied project in GitKraken.
Initialize a new project
Starting a project in GitKraken is easy through File Init
All you need to do is fill out the fields and select for the magic to begin.
Input
- New repository path
.gitignore
template (optional)Automatically creates a
.gitignore
file in your working copy.License (optional)
- On init, GitKraken will create a
LICENSE
file in your repository. - Check out the Open Source Initiative or find out more about Choosing a License.
Git Gitkraken Guide
Output
- A new initialized Git project at the specified repository path by creating a
.git
folder. - The project is opened in GitKraken
- An 'Initial commit' on a
master
branch containing a blankREADME.md
along with a.gitignore
andLICENSE.md
if applicable.
GitKraken also allows initializing a repository directly to a remote Git hosting provider such as GitHub and Bitbucket.
Delete a repository
You may delete a repository by first navigating to the folder icon in the upper left corner of the GitKraken UI.
Gitkraken Git Gui Individual
Then browse through your repo list and right-click on the repository you wish to delete from your local machine.
Git Gitkraken Branch
If you are unable to delete the repository, first make sure it is closed in GitKraken and then close any other applications which may be working with files in the repository. Restart GitKraken and try the delete again.
Gitkraken Git Hooks
Deleting the repo from within GitKraken will only delete your local copy of the repository. If you wish to delete your remote repository, you will need to perform that action directly by logging into your remote hosting service (GitHub, GitLab, etc).