GitKraken Desktop Documentation

Branch, Merge, and Rebase in GitKraken Desktop

Last updated: January 2026

Learn how to branch, merge, and rebase in GitKraken Desktop.

Looking for a quick summary? See how GitKraken solves merge conflicts.


Branches

Create a new branch when working on a feature or fix. Right-click any commit to open the context menu and create a branch.

Right-click menu in GitKraken Desktop showing option to create a new branch from a selected commit
Create a branch by right-clicking on a commit

A branch is a pointer to a specific commit, allowing you to isolate changes from the main codebase. Consider adopting GitFlow for structured branching strategies.

Checkout a Branch

Branch checkout updates files in the working directory to reflect the version defined by that branch.

To update your working directory:

  • Double-click a branch label from the Commit Graph or the Left Panel
  • Right-click a branch from the Commit Graph or the Left Panel and select Checkout
Animated view of creating and checking out a new branch in GitKraken Desktop from the right-click context menu on a commit
Creating and checking out a new branch

If you’re on the wrong branch, stash your changes, switch branches, and pop the stash.

Rename a Branch

Right-click the branch label or use the Left Panel to rename the current branch.

Context menu in GitKraken Desktop with the Rename branch option selected for the branch 'branch-rename'
Rename a branch from the graph or Left Panel

You can also rename using the Command Palette (Cmd+P / Ctrl+P):

Command Palette in GitKraken Desktop showing filtered results for 'Rename Branch'
Search for “Rename Branch” in Command Palette

Delete a Branch

To delete a branch:

  1. Switch to another branch
  2. Right-click the branch you wish to delete

Use multi-select in the Left Panel to delete several branches at once:

  • Shift to select a range
  • / Ctrl to select specific branches
Confirmation prompt for deleting multiple local branches in GitKraken Desktop
Select and delete multiple branches

Caution: Deleting a branch is permanent.


Merging

Merging combines changes from one branch into another. To merge:

  • Drag and drop one branch onto your target branch
  • Or right-click the source branch and choose Merge
Context menu showing option to merge dev branch into production branch in GitKraken Desktop
Merge via drag-and-drop or right-click

If no conflicts exist, changes will be merged automatically.

The in-app merge conflict output editor is available with a Paid license.

Merge Conflict Editor

When conflicts occur, the Commit Panel shows the conflicted files. Click a file to open the Merge Tool.

GitKraken merge conflict interface showing conflicting file test.txt when merging origin/test-merge-pr into multi-conflict-left
Conflicted files shown in Commit Panel

The Merge Tool shows:

  • Current branch on the left
  • Target branch on the right
  • Output at the bottom
Screenshot of GitKraken's merge conflict tool showing side-by-side comparison of conflicting lines in glo/calendar.md
Review and resolve conflicts in the Merge Tool

Use checkboxes or click to select lines. Use arrow keys to navigate conflicts.

GIF showing GitKraken's merge tool with the ability to select specific changes from each side to resolve merge conflicts.
Select specific lines or edit output directly

After resolving, save and commit the output.

Tip: Use Cmd/Ctrl + F to search inside the Merge Tool.

GIF showing animated merge conflict resolution process in GitKraken, selecting changes from both sides.
Animated merge resolution process

Use an External Merge Tool

Set your preferred merge tool under Preferences > General.

Supported tools:

  • Beyond Compare
  • FileMerge
  • Kaleidoscope
  • KDiff
  • Araxis
  • P4Merge
Preferences panel showing merge tool selection dropdown with Kaleidoscope selected.
Select a merge tool in Preferences

If not appearing, ensure command line tools are installed:

Beyond Compare application menu showing the Install Command Line Tools option.
Sample view of configured merge tool

Unsupported tools include:

  • Meld
  • SemanticMerge
  • TortoiseMerge
  • WinMerge

For compatibility details, visit Git Config merge tools.

Resolve with Take Current/Incoming

Right-click a conflicted file and select:

  • Take current (branch) – Use your current branch’s changes
  • Take incoming (branch) – Use changes from the incoming branch
Merge conflict resolution menu with options to take the current branch (branch-2) or the incoming branch (branch-1).
Quick resolve using current or incoming options

Conflict Prevention

GitKraken Desktop’s Conflict Prevention helps identify potential issues before a merge.

Learn more →

Available to users on the Advanced tier or higher.


Rebasing

Rebasing moves commits from one branch onto another for a cleaner history.

To rebase:

  • Drag and drop the source branch onto the target branch
  • Select Rebase from the menu
Rebase menu with the option to rebase the testfill2 branch onto origin/develop.
Rebase one branch onto another
Sidebar context menu showing options to fast-forward, merge, or rebase the testfill2 branch onto master.
Sidebar shows rebase confirmation

Rebasing rewrites history but results in a more linear and readable commit tree.

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