_This file is auto-generated. To update, make the changes in the pkg/i18n directory and then run `go run scripts/cheatsheet/main.go generate` from the project root._ # Lazygit Keybindings _Legend: `<c-b>` means ctrl+b, `<a-b>` means alt+b, `B` means shift+b_ ## Global keybindings <pre> <kbd><c-r></kbd>: Switch to a recent repo <kbd><pgup></kbd>: Scroll up main panel (fn+up/shift+k) <kbd><pgdown></kbd>: Scroll down main panel (fn+down/shift+j) <kbd>@</kbd>: Open command log menu <kbd>}</kbd>: Increase the size of the context shown around changes in the diff view <kbd>{</kbd>: Decrease the size of the context shown around changes in the diff view <kbd>:</kbd>: Execute custom command <kbd><c-p></kbd>: View custom patch options <kbd>m</kbd>: View merge/rebase options <kbd>R</kbd>: Refresh <kbd>+</kbd>: Next screen mode (normal/half/fullscreen) <kbd>_</kbd>: Prev screen mode <kbd>?</kbd>: Open menu <kbd><c-s></kbd>: View filter-by-path options <kbd>W</kbd>: Open diff menu <kbd><c-e></kbd>: Open diff menu <kbd><c-w></kbd>: Toggle whether or not whitespace changes are shown in the diff view <kbd>z</kbd>: Undo <kbd><c-z></kbd>: Redo <kbd>P</kbd>: Push <kbd>p</kbd>: Pull </pre> ## List panel navigation <pre> <kbd>,</kbd>: Previous page <kbd>.</kbd>: Next page <kbd><</kbd>: Scroll to top <kbd>/</kbd>: Start search <kbd>></kbd>: Scroll to bottom <kbd>H</kbd>: Scroll left <kbd>L</kbd>: Scroll right <kbd>]</kbd>: Next tab <kbd>[</kbd>: Previous tab </pre> ## Commit files <pre> <kbd><c-o></kbd>: Copy the committed file name to the clipboard <kbd>c</kbd>: Checkout file <kbd>d</kbd>: Discard this commit's changes to this file <kbd>o</kbd>: Open file <kbd>e</kbd>: Edit file <kbd><space></kbd>: Toggle file included in patch <kbd>a</kbd>: Toggle all files included in patch <kbd><enter></kbd>: Enter file to add selected lines to the patch (or toggle directory collapsed) <kbd>`</kbd>: Toggle file tree view </pre> ## Commit summary <pre> <kbd><enter></kbd>: Confirm <kbd><esc></kbd>: Close </pre> ## Commits <pre> <kbd><c-o></kbd>: Copy commit SHA to clipboard <kbd><c-r></kbd>: Reset cherry-picked (copied) commits selection <kbd>b</kbd>: View bisect options <kbd>s</kbd>: Squash down <kbd>f</kbd>: Fixup commit <kbd>r</kbd>: Reword commit <kbd>R</kbd>: Reword commit with editor <kbd>d</kbd>: Delete commit <kbd>e</kbd>: Edit commit <kbd>p</kbd>: Pick commit (when mid-rebase) <kbd>F</kbd>: Create fixup commit for this commit <kbd>S</kbd>: Squash all 'fixup!' commits above selected commit (autosquash) <kbd><c-j></kbd>: Move commit down one <kbd><c-k></kbd>: Move commit up one <kbd>v</kbd>: Paste commits (cherry-pick) <kbd>A</kbd>: Amend commit with staged changes <kbd>a</kbd>: Set/Reset commit author <kbd>t</kbd>: Revert commit <kbd>T</kbd>: Tag commit <kbd><c-l></kbd>: Open log menu <kbd><space></kbd>: Checkout commit <kbd>y</kbd>: Copy commit attribute <kbd>o</kbd>: Open commit in browser <kbd>n</kbd>: Create new branch off of commit <kbd>g</kbd>: View reset options <kbd>c</kbd>: Copy commit (cherry-pick) <kbd>C</kbd>: Copy commit range (cherry-pick) <kbd><enter></kbd>: View selected item's files </pre> ## Confirmation panel <pre> <kbd><enter></kbd>: Confirm <kbd><esc></kbd>: Close/Cancel </pre> ## Files <pre> <kbd><c-o></kbd>: Copy the file name to the clipboard <kbd>d</kbd>: View 'discard changes' options <kbd><space></kbd>: Toggle staged <kbd><c-b></kbd>: Filter files (staged/unstaged) <kbd>c</kbd>: Commit changes <kbd>w</kbd>: Commit changes without pre-commit hook <kbd>A</kbd>: Amend last commit <kbd>C</kbd>: Commit changes using git editor <kbd>e</kbd>: Edit file <kbd>o</kbd>: Open file <kbd>i</kbd>: Ignore or exclude file <kbd>r</kbd>: Refresh files <kbd>s</kbd>: Stash all changes <kbd>S</kbd>: View stash options <kbd>a</kbd>: Stage/unstage all <kbd><enter></kbd>: Stage individual hunks/lines for file, or collapse/expand for directory <kbd>g</kbd>: View upstream reset options <kbd>D</kbd>: View reset options <kbd>`</kbd>: Toggle file tree view <kbd>M</kbd>: Open external merge tool (git mergetool) <kbd>f</kbd>: Fetch </pre> ## Local branches <pre> <kbd><c-o></kbd>: Copy branch name to clipboard <kbd>i</kbd>: Show git-flow options <kbd><space></kbd>: Checkout <kbd>n</kbd>: New branch <kbd>o</kbd>: Create pull request <kbd>O</kbd>: Create pull request options <kbd><c-y></kbd>: Copy pull request URL to clipboard <kbd>c</kbd>: Checkout by name <kbd>F</kbd>: Force checkout <kbd>d</kbd>: Delete branch <kbd>r</kbd>: Rebase checked-out branch onto this branch <kbd>M</kbd>: Merge into currently checked out branch <kbd>f</kbd>: Fast-forward this branch from its upstream <kbd>T</kbd>: Create tag <kbd>g</kbd>: View reset options <kbd>R</kbd>: Rename branch <kbd>u</kbd>: Set/Unset upstream <kbd><enter></kbd>: View commits </pre> ## Main panel (merging) <pre> <kbd>e</kbd>: Edit file <kbd>o</kbd>: Open file <kbd><left></kbd>: Select previous conflict <kbd><right></kbd>: Select next conflict <kbd><up></kbd>: Select previous hunk <kbd><down></kbd>: Select next hunk <kbd>z</kbd>: Undo <kbd>M</kbd>: Open external merge tool (git mergetool) <kbd><space></kbd>: Pick hunk <kbd>b</kbd>: Pick all hunks <kbd><esc></kbd>: Return to files panel </pre> ## Main panel (normal) <pre> <kbd>mouse wheel down</kbd>: Scroll down (fn+up) <kbd>mouse wheel up</kbd>: Scroll up (fn+down) </pre> ## Main panel (patch building) <pre> <kbd><left></kbd>: Select previous hunk <kbd><right></kbd>: Select next hunk <kbd>v</kbd>: Toggle drag select <kbd>V</kbd>: Toggle drag select <kbd>a</kbd>: Toggle select hunk <kbd><c-o></kbd>: Copy the selected text to the clipboard <kbd>o</kbd>: Open file <kbd>e</kbd>: Edit file <kbd><space></kbd>: Add/Remove line(s) to patch <kbd><esc></kbd>: Exit custom patch builder </pre> ## Main panel (staging) <pre> <kbd><left></kbd>: Select previous hunk <kbd><right></kbd>: Select next hunk <kbd>v</kbd>: Toggle drag select <kbd>V</kbd>: Toggle drag select <kbd>a</kbd>: Toggle select hunk <kbd><c-o></kbd>: Copy the selected text to the clipboard <kbd>o</kbd>: Open file <kbd>e</kbd>: Edit file <kbd><esc></kbd>: Return to files panel <kbd><tab></kbd>: Switch to other panel (staged/unstaged changes) <kbd><space></kbd>: Toggle line staged / unstaged <kbd>d</kbd>: Delete change (git reset) <kbd>E</kbd>: Edit hunk <kbd>c</kbd>: Commit changes <kbd>w</kbd>: Commit changes without pre-commit hook <kbd>C</kbd>: Commit changes using git editor </pre> ## Menu <pre> <kbd><enter></kbd>: Execute <kbd><esc></kbd>: Close </pre> ## Reflog <pre> <kbd><c-o></kbd>: Copy commit SHA to clipboard <kbd><space></kbd>: Checkout commit <kbd>y</kbd>: Copy commit attribute <kbd>o</kbd>: Open commit in browser <kbd>n</kbd>: Create new branch off of commit <kbd>g</kbd>: View reset options <kbd>c</kbd>: Copy commit (cherry-pick) <kbd>C</kbd>: Copy commit range (cherry-pick) <kbd><c-r></kbd>: Reset cherry-picked (copied) commits selection <kbd><enter></kbd>: View commits </pre> ## Remote branches <pre> <kbd><c-o></kbd>: Copy branch name to clipboard <kbd><space></kbd>: Checkout <kbd>n</kbd>: New branch <kbd>M</kbd>: Merge into currently checked out branch <kbd>r</kbd>: Rebase checked-out branch onto this branch <kbd>d</kbd>: Delete branch <kbd>u</kbd>: Set as upstream of checked-out branch <kbd><esc></kbd>: Return to remotes list <kbd>g</kbd>: View reset options <kbd><enter></kbd>: View commits </pre> ## Remotes <pre> <kbd>f</kbd>: Fetch remote <kbd>n</kbd>: Add new remote <kbd>d</kbd>: Remove remote <kbd>e</kbd>: Edit remote </pre> ## Stash <pre> <kbd><space></kbd>: Apply <kbd>g</kbd>: Pop <kbd>d</kbd>: Drop <kbd>n</kbd>: New branch <kbd>r</kbd>: Rename stash <kbd><enter></kbd>: View selected item's files </pre> ## Status <pre> <kbd>o</kbd>: Open config file <kbd>e</kbd>: Edit config file <kbd>u</kbd>: Check for update <kbd><enter></kbd>: Switch to a recent repo <kbd>a</kbd>: Show all branch logs </pre> ## Sub-commits <pre> <kbd><c-o></kbd>: Copy commit SHA to clipboard <kbd><space></kbd>: Checkout commit <kbd>y</kbd>: Copy commit attribute <kbd>o</kbd>: Open commit in browser <kbd>n</kbd>: Create new branch off of commit <kbd>g</kbd>: View reset options <kbd>c</kbd>: Copy commit (cherry-pick) <kbd>C</kbd>: Copy commit range (cherry-pick) <kbd><c-r></kbd>: Reset cherry-picked (copied) commits selection <kbd><enter></kbd>: View selected item's files </pre> ## Submodules <pre> <kbd><c-o></kbd>: Copy submodule name to clipboard <kbd><enter></kbd>: Enter submodule <kbd>d</kbd>: Remove submodule <kbd>u</kbd>: Update submodule <kbd>n</kbd>: Add new submodule <kbd>e</kbd>: Update submodule URL <kbd>i</kbd>: Initialize submodule <kbd>b</kbd>: View bulk submodule options </pre> ## Tags <pre> <kbd><space></kbd>: Checkout <kbd>d</kbd>: Delete tag <kbd>P</kbd>: Push tag <kbd>n</kbd>: Create tag <kbd>g</kbd>: View reset options <kbd><enter></kbd>: View commits </pre>