1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2024-12-14 11:23:09 +02:00
lazygit/docs/keybindings/Keybindings_en.md

288 lines
8.0 KiB
Markdown
Raw Normal View History

# Lazygit Keybindings
2019-03-02 06:11:53 +02:00
## Global Keybindings
2019-03-02 06:11:53 +02:00
<pre>
2021-06-15 00:37:56 +02:00
<kbd>ctrl+r</kbd>: switch to a recent repo (<c-r>)
<kbd>pgup</kbd>: scroll up main panel (fn+up)
<kbd>pgdown</kbd>: scroll down main panel (fn+down)
2019-03-02 06:11:53 +02:00
<kbd>m</kbd>: view merge/rebase options
2020-01-03 14:01:32 +02:00
<kbd>ctrl+p</kbd>: view custom patch options
2019-03-02 06:11:53 +02:00
<kbd>P</kbd>: push
<kbd>p</kbd>: pull
<kbd>R</kbd>: refresh
2020-03-12 07:29:15 +02:00
<kbd>x</kbd>: open menu
2020-03-25 11:24:03 +02:00
<kbd>z</kbd>: undo (via reflog) (experimental)
<kbd>ctrl+z</kbd>: redo (via reflog) (experimental)
2020-02-28 02:41:56 +02:00
<kbd>+</kbd>: next screen mode (normal/half/fullscreen)
<kbd>_</kbd>: prev screen mode
2020-02-28 02:41:56 +02:00
<kbd>:</kbd>: execute custom command
2021-07-27 12:15:12 +02:00
<kbd>ctrl+s</kbd>: view filter-by-path options
2020-10-01 23:32:48 +02:00
<kbd>W</kbd>: open diff menu
<kbd>ctrl+e</kbd>: open diff menu
2021-06-15 00:37:56 +02:00
<kbd>@</kbd>: open command log menu
2019-03-02 06:11:53 +02:00
</pre>
2020-10-01 23:32:48 +02:00
## List Panel Navigation
2020-03-23 14:22:10 +02:00
<pre>
2020-10-01 23:32:48 +02:00
<kbd>.</kbd>: next page
2021-02-09 11:23:20 +02:00
<kbd>,</kbd>: previous page
2020-10-01 23:32:48 +02:00
<kbd><</kbd>: scroll to top
<kbd>></kbd>: scroll to bottom
2021-02-09 11:23:20 +02:00
<kbd>/</kbd>: start search
<kbd>]</kbd>: next tab
<kbd>[</kbd>: previous tab
2020-03-23 14:22:10 +02:00
</pre>
## Branches Panel (Branches Tab)
2019-03-02 06:11:53 +02:00
<pre>
<kbd>space</kbd>: checkout
<kbd>o</kbd>: create pull request
2021-07-27 12:15:12 +02:00
<kbd>O</kbd>: create pull request options
2021-02-09 11:23:20 +02:00
<kbd>ctrl+y</kbd>: copy pull request URL to clipboard
2019-03-02 06:11:53 +02:00
<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 checked-out branch onto this branch
2019-03-02 06:11:53 +02:00
<kbd>M</kbd>: merge into currently checked out branch
2020-02-28 02:41:56 +02:00
<kbd>i</kbd>: show git-flow options
2019-03-02 06:11:53 +02:00
<kbd>f</kbd>: fast-forward this branch from its upstream
2020-02-28 02:41:56 +02:00
<kbd>g</kbd>: view reset options
2020-03-18 13:08:50 +02:00
<kbd>R</kbd>: rename branch
<kbd>ctrl+o</kbd>: copy branch name to clipboard
2020-10-01 23:32:48 +02:00
<kbd>enter</kbd>: view commits
2019-03-02 06:11:53 +02:00
</pre>
## Branches Panel (Remote Branches (in Remotes tab))
<pre>
2020-08-15 03:23:14 +02:00
<kbd>esc</kbd>: Return to remotes list
<kbd>g</kbd>: view reset options
2020-10-01 23:32:48 +02:00
<kbd>enter</kbd>: view commits
<kbd>space</kbd>: checkout
<kbd>n</kbd>: new branch
<kbd>M</kbd>: merge into currently checked out branch
<kbd>d</kbd>: delete branch
<kbd>r</kbd>: rebase checked-out branch onto this branch
<kbd>u</kbd>: set as upstream of checked-out branch
</pre>
## Branches Panel (Remotes Tab)
<pre>
<kbd>f</kbd>: fetch remote
<kbd>n</kbd>: add new remote
<kbd>d</kbd>: remove remote
<kbd>e</kbd>: edit remote
2020-10-01 23:32:48 +02:00
</pre>
## Branches Panel (Sub-commits)
<pre>
<kbd>enter</kbd>: view commit's files
<kbd>space</kbd>: checkout commit
<kbd>g</kbd>: view reset options
<kbd>n</kbd>: new branch
<kbd>c</kbd>: copy commit (cherry-pick)
<kbd>C</kbd>: copy commit range (cherry-pick)
<kbd>ctrl+r</kbd>: reset cherry-picked (copied) commits selection
<kbd>ctrl+o</kbd>: copy commit SHA to clipboard
</pre>
## Branches Panel (Tags Tab)
<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
2020-10-01 23:32:48 +02:00
<kbd>enter</kbd>: view commits
</pre>
## Commit Files Panel
<pre>
2020-10-01 23:32:48 +02:00
<kbd>ctrl+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
2020-07-21 10:12:05 +02:00
<kbd>e</kbd>: edit file
<kbd>space</kbd>: toggle file included in patch
2021-03-21 01:56:45 +02:00
<kbd>enter</kbd>: enter file to add selected lines to the patch (or toggle directory collapsed)
2021-04-06 01:51:04 +02:00
<kbd>`</kbd>: toggle file tree view
2020-03-10 04:54:55 +02:00
</pre>
2020-10-01 23:32:48 +02:00
## Commits Panel (Commits)
2019-03-02 06:11:53 +02:00
<pre>
<kbd>s</kbd>: squash down
<kbd>r</kbd>: reword commit
2019-03-02 06:11:53 +02:00
<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
2021-06-15 00:37:56 +02:00
<kbd>S</kbd>: squash all 'fixup!' commits above selected commit (autosquash)
2019-03-02 06:11:53 +02:00
<kbd>d</kbd>: delete commit
<kbd>ctrl+j</kbd>: move commit down one
<kbd>ctrl+k</kbd>: move commit up one
2019-03-02 06:11:53 +02:00
<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>ctrl+o</kbd>: copy commit SHA to clipboard
2019-03-02 06:11:53 +02:00
<kbd>C</kbd>: copy commit range (cherry-pick)
<kbd>v</kbd>: paste commits (cherry-pick)
2019-03-16 09:43:13 +02:00
<kbd>enter</kbd>: view commit's files
<kbd>space</kbd>: checkout commit
<kbd>n</kbd>: create new branch off of commit
2020-02-28 02:41:56 +02:00
<kbd>T</kbd>: tag commit
2020-03-23 14:22:10 +02:00
<kbd>ctrl+r</kbd>: reset cherry-picked (copied) commits selection
2021-02-09 11:23:20 +02:00
<kbd>ctrl+y</kbd>: copy commit message to clipboard
2019-03-02 06:11:53 +02:00
</pre>
## Commits Panel (Reflog Tab)
2019-03-02 06:11:53 +02:00
<pre>
2020-10-01 23:32:48 +02:00
<kbd>enter</kbd>: view commit's files
<kbd>space</kbd>: checkout commit
<kbd>g</kbd>: view reset options
2020-10-01 23:32:48 +02:00
<kbd>c</kbd>: copy commit (cherry-pick)
<kbd>C</kbd>: copy commit range (cherry-pick)
<kbd>ctrl+r</kbd>: reset cherry-picked (copied) commits selection
<kbd>ctrl+o</kbd>: copy commit SHA to clipboard
2019-03-02 06:11:53 +02:00
</pre>
2021-06-15 00:37:56 +02:00
## Extras Panel
<pre>
<kbd>@</kbd>: open command log menu
</pre>
2020-10-01 23:32:48 +02:00
## Files Panel (Files)
2019-03-16 09:43:13 +02:00
<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
2019-03-16 09:43:13 +02:00
<kbd>o</kbd>: open file
<kbd>i</kbd>: add to .gitignore
<kbd>r</kbd>: refresh files
<kbd>s</kbd>: stash changes
<kbd>S</kbd>: view stash options
<kbd>a</kbd>: stage/unstage all
<kbd>D</kbd>: view reset options
2021-03-21 01:56:45 +02:00
<kbd>enter</kbd>: stage individual hunks/lines for file, or collapse/expand for directory
<kbd>f</kbd>: fetch
2020-10-01 23:32:48 +02:00
<kbd>ctrl+o</kbd>: copy the file name to the clipboard
<kbd>g</kbd>: view upstream reset options
2021-03-21 01:56:45 +02:00
<kbd>`</kbd>: toggle file tree view
2021-06-15 00:37:56 +02:00
<kbd>M</kbd>: open external merge tool (git mergetool)
2021-07-27 12:15:12 +02:00
<kbd>ctrl+w</kbd>: Toggle whether or not whitespace changes are shown in the diff view
2020-10-01 23:32:48 +02:00
</pre>
## Files Panel (Submodules)
<pre>
<kbd>ctrl+o</kbd>: copy submodule name to clipboard
<kbd>enter</kbd>: enter submodule
<kbd>d</kbd>: view reset and remove submodule options
<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
2019-03-16 09:43:13 +02:00
</pre>
## Main Panel (Merging)
2019-03-02 06:11:53 +02:00
<pre>
<kbd>esc</kbd>: return to files panel
2021-06-15 00:37:56 +02:00
<kbd>M</kbd>: open external merge tool (git mergetool)
<kbd>space</kbd>: pick hunk
2021-08-24 14:38:34 +02:00
<kbd>b</kbd>: pick all hunks
<kbd></kbd>: select previous conflict
<kbd></kbd>: select next conflict
2021-08-24 14:38:34 +02:00
<kbd></kbd>: select previous hunk
<kbd></kbd>: select next hunk
<kbd>z</kbd>: undo
2019-03-02 06:11:53 +02:00
</pre>
## Main Panel (Normal)
<pre>
2021-04-06 01:51:04 +02:00
<kbd>Ő</kbd>: scroll down (fn+up)
<kbd>ő</kbd>: scroll up (fn+down)
</pre>
## Main Panel (Patch Building)
<pre>
<kbd>esc</kbd>: exit line-by-line mode
2020-08-15 03:23:14 +02:00
<kbd>o</kbd>: open file
<kbd></kbd>: select previous line
<kbd></kbd>: select next line
<kbd></kbd>: select previous hunk
<kbd></kbd>: select next hunk
2020-03-05 02:36:35 +02:00
<kbd>space</kbd>: add/remove line(s) to patch
<kbd>v</kbd>: toggle drag select
<kbd>V</kbd>: toggle drag select
<kbd>a</kbd>: toggle select hunk
</pre>
## Main Panel (Staging)
2019-03-02 06:11:53 +02:00
<pre>
<kbd>esc</kbd>: return to files panel
2020-03-05 02:36:35 +02:00
<kbd>space</kbd>: toggle line staged / unstaged
<kbd>d</kbd>: delete change (git reset)
2020-02-28 02:41:56 +02:00
<kbd>tab</kbd>: switch to other panel
2020-08-15 03:23:14 +02:00
<kbd>o</kbd>: open file
2019-03-02 06:11:53 +02:00
<kbd></kbd>: select previous line
<kbd></kbd>: select next line
<kbd></kbd>: select previous hunk
<kbd></kbd>: select next hunk
2020-02-28 02:41:56 +02:00
<kbd>e</kbd>: edit file
<kbd>o</kbd>: open file
<kbd>v</kbd>: toggle drag select
<kbd>V</kbd>: toggle drag select
<kbd>a</kbd>: toggle select hunk
<kbd>c</kbd>: commit changes
<kbd>w</kbd>: commit changes without pre-commit hook
2020-02-28 02:41:56 +02:00
<kbd>C</kbd>: commit changes using git editor
2019-03-02 06:11:53 +02:00
</pre>
2020-03-10 04:54:55 +02:00
## Menu Panel
<pre>
2020-03-12 07:26:11 +02:00
<kbd>esc</kbd>: close menu
2020-03-10 04:54:55 +02:00
</pre>
## Stash Panel
<pre>
2020-10-01 23:32:48 +02:00
<kbd>enter</kbd>: view stash entry's files
<kbd>space</kbd>: apply
<kbd>g</kbd>: pop
<kbd>d</kbd>: drop
2020-10-01 23:32:48 +02:00
<kbd>n</kbd>: new branch
</pre>
## Status Panel
<pre>
<kbd>e</kbd>: edit config file
<kbd>o</kbd>: open config file
<kbd>u</kbd>: check for update
<kbd>enter</kbd>: switch to a recent repo
2021-02-09 11:23:20 +02:00
<kbd>a</kbd>: show all branch logs
</pre>