GitKraken Desktop Documentation

Gitflow

Last updated: May 2025

Gitflow helps organize your repository history, making it easier to manage releases, bug fixes, and features.


Configuration

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.


Usage

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.

Feature

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.

Release

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

Hotfix

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.

Tag

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