Complete Lazygit keyboard shortcuts reference — 83 shortcuts across 4 categories. Quick reference cheat sheet for Windows, Mac & Linux.
lazygit is a terminal UI for git where nearly every action is a single key on the panel that has focus, so the same letter does different things in the Files, Branches and Commits panels. The table follows that split. Two keys cover the rest: ? shows every binding for the current panel, and : runs any git command you type.
| Shortcut | Action |
|---|---|
| ? | Keybindings Menu |
| q | Quit |
| Escape | Cancel |
| Ctrl + R | Recent Repo |
| R | Refresh |
| p | Pull |
| P | Push |
| m | Merge or Rebase Options |
| z | Undo |
| Z | Redo |
| : | Execute Shell Command |
| @ | Command Log Options |
| + | Next Screen Mode |
| _ | Previous Screen Mode |
| | | Cycle Pagers |
| Ctrl + P | Custom Patch Options |
| Ctrl + S | Filter Options |
| W | Diffing Options |
| Ctrl + W | Toggle Whitespace |
| Ctrl + Z | Suspend |
| ) | Increase Rename Threshold |
| ( | Decrease Rename Threshold |
| } | Increase Diff Context |
| { | Decrease Diff Context |
| Shortcut | Action |
|---|---|
| PageUp | Scroll Main Up |
| PageDown | Scroll Main Down |
| , | Previous Page |
| . | Next Page |
| < | Scroll to Top |
| > | Scroll to Bottom |
| v | Toggle Range Select |
| Shift + Down | Range Select Down |
| Shift + Up | Range Select Up |
| / | Search or Filter View |
| H | Scroll Left |
| L | Scroll Right |
| ] | Next Tab |
| [ | Previous Tab |
| Tab | Switch View |
| 0 | Focus Main View |
| Shortcut | Action |
|---|---|
| Space | Stage or Checkout |
| a | Stage All |
| Enter | Enter Item |
| d | Discard or Drop |
| D | Reset Working Tree |
| c | Commit or Checkout |
| w | Commit without Hook |
| C | Commit with Editor |
| A | Amend |
| Ctrl + F | Find Base Commit for Fixup |
| e | Edit |
| o | Open File |
| i | Ignore or Exclude |
| r | Refresh Files |
| s | Stash |
| S | Stash Options |
| M | Merge Conflict Options |
| f | Fetch |
| E | Edit Hunk |
| ` | Toggle File Tree View |
| - | Collapse All Files |
| = | Expand All Files |
| Ctrl + B | Filter Files by Status |
| Ctrl + O | Copy to Clipboard |
| Ctrl + T | Open External Diff Tool |
| y | Copy Attribute |
| Shortcut | Action |
|---|---|
| b | Bisect Options |
| F | Create Fixup Commit |
| t | Revert |
| T | Tag Commit |
| V | Paste Commits |
| B | Mark Base Commit |
| g | Reset |
| n | New Branch |
| N | Move Commits to New Branch |
| G | Open Pull Request |
| Ctrl + J | Move Commit Down |
| Ctrl + K | Move Commit Up |
| Ctrl + L | Log Options |
| * | Select Branch Commits |
| u | Upstream Options |
| O | Pull Request Options |
| Ctrl + Y | Copy PR URL |
In the Files panel, Space stages or unstages the highlighted file and a stages everything; Enter opens the file so individual hunks and lines can be staged with the same Space key. c commits with an inline message, C opens your editor for a longer one, and A amends the last commit. p pulls and P pushes from any panel. d discards changes to a file — it asks first — and s stashes.
In the Commits panel, Ctrl + J and Ctrl + K move a commit down or up, which is an interactive rebase without the todo file. F creates a fixup commit for the highlighted commit and Ctrl + F finds the right base commit for one automatically. t reverts, T tags, g resets the branch to the commit, and N moves the selected commits onto a new branch. z undoes the last lazygit action by walking the reflog, which is the safety net for all of the above.
v starts a range selection so several files or commits can be acted on at once. W opens diffing options to compare any two refs, Ctrl + W hides whitespace changes, and } and { widen or narrow the diff context. @ shows the log of git commands lazygit has run on your behalf, which is the fastest way to learn what a key actually does under the hood. + cycles screen modes to give the main panel more room.
Press Enter on the file to open its diff, move to a hunk or line, and press Space to stage just that.
Press z. lazygit walks the reflog to undo its own actions; Z redoes.
Press @ to open the command log options and view the log panel.
Keys are scoped to the focused panel. Press ? in any panel for its bindings, or Tab to switch panels.
Open your assistant with this page preloaded as the source — great for follow-up questions like "which of these work in other apps?"