GitKraken Keyboard Shortcuts
GitKraken leans harder into visual polish than most Git GUI competitors, and its shortcut set reflects a design philosophy built around making the commit graph itself the primary navigation surface — clicking and dragging commits to rebase or cherry-pick is a headline interaction, with keyboard shortcuts layered on mainly to speed up the surrounding actions like staging, committing, and pushing rather than replacing the graph interactions themselves. Ctrl/Cmd+Enter to commit staged changes matches the same convention found in Sourcetree and most other Git GUIs, reflecting how universal that particular binding has become across the category regardless of which specific client you're using. GitKraken's built-in merge conflict tool has its own dedicated shortcuts for resolving conflicts hunk by hunk, which matters because visual conflict resolution is one of the areas where a GUI genuinely saves meaningful time over manually editing conflict markers in a text editor, especially for less Git-experienced team members. The audience GitKraken tends to win over most decisively is teams with a mix of Git-comfortable and Git-nervous developers, since the visual graph and drag-to-rebase interactions make history operations that are genuinely intimidating from the raw command line — an interactive rebase, a three-way merge conflict — considerably less error-prone for someone who doesn't live in a terminal all day. Branch creation and cherry-picking both benefit substantially from GitKraken's graph-centric interaction model, since starting a new branch from a specifically chosen point in visible history, or picking exactly one commit to apply elsewhere, are both considerably easier to get right when you can see the actual commit structure laid out visually rather than needing to reference commit hashes from a command-line log.
Staging Committing
| Action | Windows | Mac | Description |
|---|---|---|---|
| Commit staged changes | Ctrl+Enter | Cmd+Return | Records the currently staged changes as a new commit using whatever message you've typed, following the same core convention nearly every Git GUI client shares for this action. |
| Stage selected file | Click file + Stage button (no dedicated key) | — | Stages an individual changed file for the next commit, primarily a click-driven action within GitKraken's file list rather than a dedicated keyboard shortcut. |
| Stage all changed files | Stage All button (no dedicated key) | — | Stages every currently modified file in one action, useful when a commit is meant to bundle all pending changes together rather than selectively staging a subset of files. |
| Push to remote | Ctrl+P | Cmd+P | Uploads the current branch's local commits to its tracked remote, and if no upstream has been configured yet, prompts you to set one up before continuing. |
| Pull from remote | Ctrl+Shift+P (varies) | Cmd+Shift+P | Grabs new commits from the tracked remote branch and folds them into the current local branch, either merging or rebasing depending on your configured preference. |
| Create new branch | Ctrl+Alt+N | Cmd+Option+N | Pops open the new-branch dialog, using whatever commit or branch is currently highlighted in the graph view as the starting point. |
| Undo last GitKraken action | Ctrl+Z | Cmd+Z | Reverts the most recent GitKraken-initiated action where undo is supported, though it's worth noting Git's own operations aren't universally undoable the same way a text edit is, so GitKraken's undo covers what it safely can rather than guaranteeing every possible action is reversible. |
Graph Navigation
| Action | Windows | Mac | Description |
|---|---|---|---|
| Zoom commit graph | Ctrl+Scroll | Cmd+Scroll | Zooms the visual commit graph in or out, useful for repositories with a long or complex branching history where the default zoom level makes individual commits hard to distinguish. |
| Search commit graph | Ctrl+F | Cmd+F | Searches commits by message, author, or hash within the visual graph, letting you locate a specific commit without scrolling through the full history manually. |
| Focus/highlight a specific branch in graph | Click branch name in sidebar | — | Highlights a chosen branch's commit line through the graph, dimming unrelated commits, useful for visually tracing a single feature branch's history through a busy multi-branch repository. |
| Checkout a branch | Double-click branch in sidebar (no dedicated key) | — | Checks out whichever branch is selected, moving the graph's highlighted current position along with it — the point-and-click equivalent of typing git checkout at a terminal. |
| Cherry-pick a commit | Right-click commit > Cherry Pick Commit (no dedicated key) | — | Applies a specific commit's changes onto the currently checked-out branch, a common way to pull one targeted fix from another branch without merging that branch's entire history. |
Conflict Resolution
| Action | Windows | Mac | Description |
|---|---|---|---|
| Open conflict resolution editor | Click conflicted file during merge | — | Opens GitKraken's built-in visual merge conflict tool for a conflicted file, showing both versions side by side with clickable hunk-selection rather than requiring manual editing of conflict marker syntax. |
| Accept a specific conflict hunk | Click hunk's accept button (no dedicated key) | — | Accepts one side's version of a specific conflicting section during merge conflict resolution, a click-driven action within the visual conflict editor that replaces manually deleting conflict marker lines. |
| Abort an in-progress merge | Right-click > Abort Merge (no dedicated key) | — | Cancels a merge that has produced conflicts, returning both branches to their pre-merge state, useful when the conflicts turn out to be more extensive than expected and a different resolution strategy is needed. |
Frequently Asked Questions
What makes GitKraken's commit graph different from Sourcetree's or a plain 'git log --graph'?
GitKraken places heavier emphasis on making the graph directly interactive — dragging a commit onto a branch to rebase, or dragging one branch onto another to merge — rather than treating the graph as a read-only visualization with separate menu-driven actions, which is a more direct manipulation model than most competing Git GUIs use.
Does GitKraken's visual conflict editor actually change how Git resolves the conflict, or just how it's presented?
It only changes the presentation and interaction — under the hood, resolving a conflict still means producing a final merged version of the file and marking it resolved via the same underlying Git mechanisms a manual text-editor resolution would use; the visual tool just makes selecting which changes to keep faster and less error-prone than reading raw conflict marker syntax.
Is GitKraken free, or does it require a paid license for full functionality?
GitKraken offers a free tier usable on public repositories and limited private repository use, with a paid Pro tier required for unlimited private repositories and some advanced features; the exact free-tier limits have changed over the product's history, so it's worth checking current terms before relying on it for private work.
What happens if I abort a merge partway through resolving conflicts?
Aborting returns both branches to exactly the state they were in before the merge attempt began, discarding any partial conflict resolutions already made — it's a clean full reset rather than a partial undo, which is useful if you realize mid-resolution that a different merge strategy or additional commits are needed first.
Can dragging commits in the graph to rebase cause data loss if done incorrectly?
As with any rebase, dragging one branch onto another rewrites commit history and can cause problems if the branch being moved has already been pushed and pulled by other collaborators, since rewritten commits get new hashes; GitKraken doesn't remove this fundamental Git risk, it just makes performing the rebase operation itself more visually intuitive than the equivalent interactive rebase from the command line.
Does GitKraken support interactive rebase the way the command line does?
Yes — GitKraken exposes interactive rebase through its drag-and-drop graph interface rather than an editable text list of commits, letting you reorder, squash, or drop commits by dragging them within the graph, which achieves the same end result as `git rebase -i` through a visual interaction instead of editing a plain-text rebase instruction file. This is one of the areas where GitKraken most clearly earns its place over a plain command-line workflow for developers still building confidence with history rewriting.
What is cherry-picking, and how is it different from merging a whole branch?
Cherry-picking applies just one specific commit's changes onto your current branch, rather than merging or rebasing an entire branch's full history, which is useful when only a single targeted fix from another branch is needed without pulling in everything else that branch contains — GitKraken exposes this as a right-click action directly on a commit in the graph rather than requiring the equivalent command-line `git cherry-pick` invocation.