Last updated: May 2025
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.

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

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.

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

Delete a Branch
To delete a branch:
- Switch to another branch
- 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

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

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.

The Merge Tool shows:
- Current branch on the left
- Target branch on the right
- Output at the bottom

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

After resolving, save and commit the output.
Tip: Use Cmd/Ctrl + F to search inside the Merge Tool.

Use an External Merge Tool
Set your preferred merge tool under Preferences > General.
Supported tools:
- Beyond Compare
- FileMerge
- Kaleidoscope
- KDiff
- Araxis
- P4Merge

If not appearing, ensure command line tools are installed:

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 changesTake incoming (branch)
– Use changes from the incoming branch

Conflict Prevention
GitKraken Desktop’s Conflict Prevention helps identify potential issues before a merge.
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


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