GitKraken Desktop Documentation

Gitflow in GitKraken Desktop

Last updated: March 2026

Use this page to configure and run Gitflow in GitKraken Desktop when your team organizes work into feature, release, and hotfix branches. It covers the initial Gitflow setup, how the Gitflow panel works, and what happens when each Gitflow branch type is finished.

Requirements and limits

  • Workflow scope: Gitflow-style branching with feature, release, and hotfix branches
  • Setup location: Preferences > Gitflow
  • Initialization behavior: GitKraken Desktop creates main and develop locally if they do not exist
  • Panel behavior: Only branches with Gitflow prefixes appear in the Gitflow panel
  • Finish behavior: Features merge into develop; releases merge into main and develop and create a tag; hotfixes merge into main and develop
  • Publishing behavior: Publishing a Gitflow branch works the same as pushing any other Git branch

Quick Start

  1. Go to Preferences > Gitflow and initialize Gitflow for the repository. Optionally adjust default branch names.
  2. GitKraken Desktop creates main and develop branches if they do not exist.
  3. A Gitflow panel appears in the Left Panel. Click the green button to start a branch, or create a branch manually using a Gitflow prefix (e.g., feature/my-feature, release/1.0.0).

To finish a branch type:

  • Feature: Merges into develop and deletes the branch locally.
  • Release: Merges into both main and develop, and creates a tag.
  • Hotfix: Merges into both main and develop.

Right-click a Gitflow branch in the Left Panel and select Finish to complete it. To set a tag prefix (e.g., v), configure it under Preferences > Gitflow. Publishing a Gitflow branch to a remote works the same as pushing any other branch.


How Gitflow configuration works

To configure Gitflow in GitKraken Desktop:

  1. Navigate to Preferences > Gitflow.
  2. Optionally, change the default branch names.

Gitflow Preferences menu with default branch names

Once initialized, two branches will always be present:

  • main: the version in production.
  • develop: the current development version for the next release.

If these branches don’t exist locally, GitKraken Desktop will create them when Gitflow is initialized.


How to use Gitflow

After initializing Gitflow, a Gitflow panel appears in the left sidebar. Use it to start or finish Gitflow branches.

Gitflow panel in left sidebar

To create a Gitflow branch:

  • Click the green button in the Gitflow panel.
  • Or name a branch with a Gitflow prefix (e.g., release/branch-name).

Branches with a Gitflow prefix appear in the Gitflow panel. Others appear in the local repository section only.

Branch name prefixes

Note: Gitflow organizes features, hotfixes, and releases into separate folders.

Publishing a Gitflow branch (i.e., pushing it to a remote) works the same as with regular Git branches.

How feature branches work

Feature branches are for new features or bug fixes. They’re typically local and not shared.

When you finish a feature branch:

  • It’s merged into develop.
  • It’s deleted from the local repository.

Finishing a feature branch

Optionally, rebase the feature branch onto develop before finishing.

How release branches work

Release branches represent versions shared with collaborators.

When you finish a release branch:

  • It’s merged into both main and develop.
  • A tag is created with the release name.

Context menu for finishing a release
Finish release process

How hotfix branches work

Hotfix branches are similar to releases but created from main. Use them for urgent production fixes.

Examples include bug fixes or typos that must go live immediately.

Finish hotfix process

When you finish a hotfix:

  • It’s merged into both main and develop.

How Gitflow tags work

Tags mark specific points in your repository’s history, such as releases.

Create tags from the Gitflow panel or the command line. When tagging from the Gitflow panel:

  • The tag name matches the branch name (e.g., release/1.0.01.0.0).
  • You can add a message to the tag.

Tagging during release

Tag message dialog

In Preferences > Gitflow, set a tag prefix (e.g., v). This prefix is added to tags (e.g., v1.0.0).

Setting tag prefix

Have feedback about this article? Did we miss something? Let us know!
On this page