Skip to content

Keybindings

The hint bar shows the most common actions for the focused panel, and ? opens the full menu at any time.

spacestagenchangelistccommitrrevertddelete[ ]view?help

The table below is generated from the same Go table the ? overlay renders, so the two can never disagree. Filter it by action, key or description, or narrow it to a single section — press / to jump to the filter.

Changes

ActionKeysWhereWhat it does
Stage / unstagespaceFilesStage or unstage the selected file, or every change under the selected directory. An untracked file is svn added first.
Assign changelistnFilesAssign the staged set — or just the selected file when nothing is staged — to a named changelist.
Commit staged / listcFilesCommit the staged files, or the selected changelist.
Expand changelistenterFilesExpand or collapse the selected directory, or drill into a changelist.
Revert / delete filerdFilesRevert or delete the selected file, or everything under the selected directory. In the Diffs view d deletes the highlighted patch file from diffOutputDir instead. All ask for confirmation.
Apply saved patchpDiffsApply the patch file highlighted in the Diffs view to the source path, after asking for confirmation. A patch taken from another directory — one whose files are not the ones here — is refused, as is one svn says would land nothing at all. A patch that only partly fits is applied for what it is worth, with the hunks svn could not place written out beside their targets as .rej files.
Resolve conflictmFilesResolve the selection side by side. Which view you are in decides what it resolves, and the two are never mixed: in the Changes view (or an expanded changelist) it reads the conflict markers in the selected C file, and in the Rejects view it reads the selected .rej against the file it was written for. A patch that leaves a file both conflicted and with a reject beside it is therefore two pieces of work, one in each view. Each conflict, or each rejected hunk that still fits, is a page: 1 takes the left side, 2 the right, 3 both and 0 clears the choice. Once every page has been decided, w writes the file back out and clears what marked it — svn resolve for a conflict, removing the reject for a reject. e opens the file in your editor to merge it by hand instead.

Working copy

ActionKeysWhereWhat it does
Update working copyuGlobalUpdate the working copy to the latest revision.
Update to revspaceLogUpdate the working copy to the selected revision.
Open file in editoreFilesOpen the highlighted file in the configured editor, positioned on its first changed hunk. Pressed with the Diff panel focused it opens on the line under the cursor instead, so the editor picks up where the eye left off — which is also how a file is picked out of a directory's combined diff. It works from the side-by-side and resolution overlays too, on the file whose page is open.
Change source pathPGlobalRe-scope revision to another directory inside the working copy, browsing to it from a prompt that opens on the directory it is reading now. The working copy's root is fixed, and the new source lasts for the session only — it is never saved.
Switch repositoryWGlobalMove revision to another working copy altogether. The prompt opens at once and the checkouts it finds fill in behind it, so a slow filesystem never holds up the keystroke; typing narrows the list. It looks in the directory revision was started in, in the checkout it is reading, and in that checkout's parents a few levels up, so a sibling of the current tree is offered as readily as something inside it — nearest first. The search stops at each checkout it finds, since everything under one belongs to it, and gives up after a few seconds rather than walking a large tree to the end; anything it did not reach is opened by typing its path in full. A path that is not an SVN working copy is refused and nothing changes. The switch lasts for the session only.
Refresh / settingsRSGlobalRefresh status and history, or open the settings editor.
Toggle live refreshLGlobalTurn background watching of the working copy on or off. While it is on, a change made outside revision reaches the Files and diff panels on its own. The toggle lasts for the session only; liveRefresh sets the default.
ActionKeysWhereWhat it does
Jump to panel12340GlobalFocus the Status, Files, Log, Command Log or Main panel.
Cycle panelstabshift+tabGlobalMove focus to the next or previous panel.
Move up / downkjAny panelMove the selection up or down. ↑ and ↓ work too.
Jump top / bottomgGAny panelJump to the first or last row.
Next / prev history pagenpLogLoad the next or previous page of revision history. A page holds logLimit revisions.
Scroll main up / downKJMainScroll the Main panel up or down a page.
Scroll main l / rhlMainScroll the focused panel one column left or right. ← and → work too.
Line start / endhomeendAny panelJump to the start or end of the line. ^ and $ work too.
Filter panel/Any panelFilter the Files or Log panel, or search within Main or Status.

View

ActionKeysWhereWhat it does
Switch file view[]FilesTurn the Files panel between the Changes, Changelists and Diffs views.
Side-by-side / saveswMainOpen the diff on screen side by side in an overlay, or save it to a file in diffOutputDir.
Dir diff / untrackedDUFilesToggle the directory-level diff for the highlighted directory, or toggle hiding untracked files.
Toggle command logxGlobalShow or hide the Command Log panel.

General

ActionKeysWhereWhat it does
Toggle help?GlobalOpen or close this keybindings reference.
QuitqGlobalQuit revision. ctrl+c works too.

Modal contexts, which the menu above does not cover.

Context Keys
Commit editor, settings form ctrl+s submits, esc cancels
Changelist-name prompt tab toggles between typing a new name and picking an existing changelist
Confirmation dialog enter or y confirms, esc or n cancels
Side-by-side overlay [ / ] turn between files, e opens the file on the open page in your editor, s or esc closes
Filter input enter keeps the query, esc clears it
Main / Status with an active search n / N walk to the next / previous match
╭─ [1] Status ─────────────────╮╭─ [0] Diff ───────────────────────────────────╮
│Root      /home/alice/work/wc ││Loading diff…                                 │
│Source ╭─ Keybindings ────────────────────────────────────────────────╮       │
│CWD    │Changes                         Navigation                    │       │
│Branch │  Stage / unstage        space    Jump to panel      1 2 3 4 0│       │
│Revisio│  Assign changelist          n    Cycle panels tab / shift+tab│       │
│       │  Commit staged / list       c    Move up / down         k / j│       │
╰───────│  Expand changelist      enter    Jump top / bottom      g / G│       │
╭─ [2] ─│  Revert / delete file   r / d    Next / prev history pa n / p│       │
│  ▾ /  │  Apply saved patch          p    Scroll main up / down  K / J│       │
│>     M│  Resolve conflict           m    Scroll main l / r      h / l│       │
│       │Working copy                      Line start / end  home / end│       │
│       │  Update working copy        u    Filter panel               /│       │
│       │  Update to rev (Log)    space  View                          │       │
╰───────│  Open file in editor        e    Switch file view       [ / ]│       │
╭─ [3] L│  Change source path         P    Side-by-side / save    s / w│       │
│  Rev A│  Switch repository          W    Dir diff / untracked   D / U│───────╯
│       │  Refresh / settings     R / S    Toggle command log         x│───────╮
│       │  Toggle live refresh        L  General                       │       │
│       │                                  Toggle help                ?│       │
│       │                                  Quit                       q│       │
│       ╰──────────────────────────────────────────────────────────────╯       │
╰──────────────────────────────╯╰──────────────────────────────────────────────╯
space stage · n changelist · c commit · r revert · d delete · [ ] view · ? help 
The ? overlay, rendered by the app itself.