Gitflow
Last updated: November 2026
Use this page to configure and run Gitflow in GitKraken Desktop when your team organizes work into feature, release, and hotfix branches.
Requirements and limits
- Workflow scope: Gitflow-style branching with feature, release, and hotfix branches
- Setup location: Preferences > Gitflow
- Initialization behavior:
mainmust already exist locally; GitKraken Desktop createsdevelopif it does not exist - Panel behavior: Only branches with Gitflow prefixes appear in the GITFLOW section of the Left Panel
- Finish behavior: Features merge into
develop; releases and hotfixes merge intomainanddevelopand create a tag - Publishing behavior: Publishing a Gitflow branch works the same as pushing any other Git branch
Quick Start
- Go to Preferences > Gitflow, optionally adjust the default branch names, and click Initialize Gitflow.
- GitKraken Desktop creates
developif it does not exist. Yourmainbranch must already exist locally. - A GITFLOW section appears in the Left Panel. To start a branch, click Open Gitflow on the section header, then under Start click Feature, Release, or Hotfix. You can also create a branch manually with a Gitflow prefix (for example,
feature/my-featureorrelease/1.0.0).
To finish a branch type:
- Feature: Merges into
develop. - Release: Merges into both
mainanddevelop, and creates a tag. - Hotfix: Merges into both
mainanddevelop, and creates a tag.
To finish a branch, right-click it in the Left Panel and select Finish followed by the branch name.
Each Finish form has a Delete branch checkbox, selected by default, that deletes the branch locally after it is merged. GitKraken Desktop remembers your choice separately for features, releases, and hotfixes.
To set a tag prefix (for example, v), go to Preferences > Gitflow.
How Gitflow configuration works
To configure Gitflow in GitKraken Desktop:
- Go to Preferences > Gitflow.
- Optionally, change the default branch names.
- Click Initialize Gitflow.

After you initialize Gitflow, the repository always has these 2 branches:
main: the version in production.develop: the current development version for the next release.
The main branch must already exist locally, or initializing fails with Failed initializing Gitflow. If develop does not exist, GitKraken Desktop creates it when Gitflow is initialized: from the remote develop branch if there is one, otherwise from main.
How to use Gitflow
After you initialize Gitflow, a GITFLOW section appears in the Left Panel. Click Open Gitflow on its header to open the Gitflow panel, where you start and finish Gitflow branches.

To create a Gitflow branch:
- In the Gitflow panel, under Start, click Feature, Release, or Hotfix.
- Or name a branch with a Gitflow prefix (for example,
release/branch-name).
Branches with a Gitflow prefix appear in the GITFLOW section of the Left Panel. Other branches appear only in the LOCAL section.

Note: The GITFLOW section groups feature, release, and hotfix branches into separate folders.
To publish a Gitflow branch, push it to a remote the same way as any other branch.
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, unless you clear Delete branch.

To rebase the feature branch onto develop before it merges, select Rebase on develop in the Finish form.
How release branches work
Release branches represent versions shared with collaborators.
When you finish a release branch:
- It’s merged into both
mainanddevelop. - A tag is created with the release name.
- It’s deleted from the local repository, unless you clear Delete branch.
If the finish stops on a merge conflict, resolve the conflict and commit the merge. GitKraken Desktop then completes the rest of the finish, including the tag.


How hotfix branches work
Hotfix branches are similar to releases but created from main. Use them for urgent production fixes, such as bug fixes or typos that must go live immediately.

When you finish a hotfix:
- It’s merged into both
mainanddevelop. - A tag is created with the hotfix name.
- It’s deleted from the local repository, unless you clear Delete branch.
If the finish stops on a merge conflict, resolve the conflict and commit the merge. GitKraken Desktop then completes the rest of the finish, including the tag.
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 you finish a release or hotfix from the Gitflow panel:
- The tag name is the branch name without its prefix (for example,
release/1.0.0→1.0.0,hotfix/1.0.1→1.0.1). - You can add a message to the tag.


To add a prefix to these tags, enter it in Version Tag under Preferences > Gitflow. For example, the prefix v produces the tag v1.0.0.
