# Lazygit menu ## Global <pre> <kbd>m</kbd>: view merge/rebase options <kbd>ctrl+p</kbd>: view custom patch options <kbd>P</kbd>: push <kbd>p</kbd>: pull <kbd>R</kbd>: refresh </pre> ## Status <pre> <kbd>e</kbd>: edit config file <kbd>o</kbd>: open config file <kbd>u</kbd>: check for update <kbd>s</kbd>: switch to a recent repo </pre> ## Files <pre> <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>space</kbd>: toggle staged <kbd>d</kbd>: view 'discard changes' options <kbd>e</kbd>: edit file <kbd>o</kbd>: open file <kbd>i</kbd>: add to .gitignore <kbd>r</kbd>: refresh files <kbd>S</kbd>: stash files <kbd>a</kbd>: stage/unstage all <kbd>t</kbd>: add patch <kbd>D</kbd>: view reset options <kbd>enter</kbd>: stage individual hunks/lines <kbd>f</kbd>: fetch <kbd>X</kbd>: execute custom command </pre> ## Branches <pre> <kbd>space</kbd>: checkout <kbd>o</kbd>: create pull request <kbd>c</kbd>: checkout by name <kbd>F</kbd>: force checkout <kbd>n</kbd>: new branch <kbd>d</kbd>: delete branch <kbd>r</kbd>: rebase branch <kbd>M</kbd>: merge into currently checked out branch <kbd>f</kbd>: fast-forward this branch from its upstream </pre> ## Commits <pre> <kbd>s</kbd>: squash down <kbd>r</kbd>: reword commit <kbd>R</kbd>: rename commit with editor <kbd>g</kbd>: reset to this commit <kbd>f</kbd>: fixup commit <kbd>F</kbd>: create fixup commit for this commit <kbd>S</kbd>: squash above commits <kbd>d</kbd>: delete commit <kbd>ctrl+j</kbd>: move commit down one <kbd>ctrl+k</kbd>: move commit up one <kbd>e</kbd>: edit commit <kbd>A</kbd>: amend commit with staged changes <kbd>p</kbd>: pick commit (when mid-rebase) <kbd>t</kbd>: revert commit <kbd>c</kbd>: copy commit (cherry-pick) <kbd>C</kbd>: copy commit range (cherry-pick) <kbd>v</kbd>: paste commits (cherry-pick) <kbd>enter</kbd>: view commit's files <kbd>space</kbd>: select commit to diff with another commit </pre> ## Stash <pre> <kbd>space</kbd>: apply <kbd>g</kbd>: pop <kbd>d</kbd>: drop </pre> ## Commit files <pre> <kbd>esc</kbd>: go back <kbd>c</kbd>: checkout file <kbd>d</kbd>: discard this commit's changes to this file <kbd>o</kbd>: open file </pre> ## Main (Normal) <pre> <kbd>PgDn</kbd>: scroll down (fn+up) <kbd>PgUp</kbd>: scroll up (fn+down) </pre> ## Main (Staging) <pre> <kbd>esc</kbd>: return to files panel <kbd>▲</kbd>: select previous line <kbd>▼</kbd>: select next line <kbd>◄</kbd>: select previous hunk <kbd>►</kbd>: select next hunk <kbd>space</kbd>: stage line <kbd>a</kbd>: stage hunk </pre> ## Main (Merging) <pre> <kbd>esc</kbd>: return to files panel <kbd>space</kbd>: pick hunk <kbd>b</kbd>: pick both hunks <kbd>◄</kbd>: select previous conflict <kbd>►</kbd>: select next conflict <kbd>▲</kbd>: select top hunk <kbd>▼</kbd>: select bottom hunk <kbd>z</kbd>: undo </pre>