From 58a1129c9b698d5d58db9262293f9ac1ef988a83 Mon Sep 17 00:00:00 2001 From: Dimi Shahbaz <18686460+dshahbaz@users.noreply.github.com> Date: Thu, 22 Dec 2022 15:07:57 -0800 Subject: [PATCH] Update tig cheatsheet (#1918) * Update tig cheatsheet The last update was in 2018, and some shortcuts were wrong, and many were missing. This update adds the most pertinent shortcuts in the most used tig views. This update matches tig version 2.4.1. * Fix build Co-authored-by: Rico Sta. Cruz --- tig.md | 116 ++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 81 insertions(+), 35 deletions(-) diff --git a/tig.md b/tig.md index bd1684fa5..ef0add50b 100644 --- a/tig.md +++ b/tig.md @@ -2,7 +2,7 @@ title: Tig category: Git layout: 2017/sheet -updated: 2018-11-16 +updated: 2022-12-08 weight: -3 --- @@ -22,7 +22,7 @@ $ sudo apt install tig | Command | Description | | ------------------- | -------------------------------------------- | -| `tig` | | +| `tig` | Logs | | --- | --- | | `tig status` | Status | | `tig blame FILE` | Blame | @@ -40,54 +40,100 @@ You can substitute `git log` → `tig`. ### Switching views -| `m` | Main view | -| `s` | Status | -| `t` | Tree (files) | -| `y` | Stash view | -| `g` | Grep | -| `h` | Help | +| Shortcut | Description | +| -------- | ------------ | +| `m` | Main view | +| `d` | Diff | +| `t` | Tree (files) | +| `b` | Blame | +| `s` | Status | +| `c` | Stage | +| `y` | Stash | +| `g` | Grep | +| `h` | Help | {: .-shortcuts} ### All views -| Shortcut | Description | -| --- | --- | -| `j` `k` | Up/down | -| `J` `K` | Next/previous | -| --- | --- | -| `<` | Back | -| `R` | Refresh | -| `q` | Close | -| `Q` | Close all | -| --- | --- | -| `^N` | Next on parent view | -| `^P` | Previous on parent view | +| Shortcut | Description | +| --- | --- | +| `` | Enter and open selected line | +| `<` | Back to previous view state | +| `` | Move focus to next view | +| `R` | Refresh | +| `q` | Close view | +| `Q` | Close all (quit) | +| `,` | Parent commit | +{: .-shortcuts} + +### Cursor navigation + +| Shortcut | Description | +| --- | --- | +| `/` | Search | +| `?` | Search backwards | +| `j` `k` | Up/down | +| `J` `K` | Next/previous | +| `` | Page down | +| `-` | Page up | +| `^D` | Half page down | +| `^U` | Half page up | +{: .-shortcuts} + +### Option toggles + +| Shortcut | Description | +| --- | --- | +| `I` | Toggle sort order modes | +| `i` | Change sort header | +| `D` | Toggle date display modes | +| `A` | Toggle author display modes | +| `#` | Toggle line numbers | +| `~` | Toggle line graphics | +| `F` | Toggle file names | +| `W` | Toggle ignore space | {: .-shortcuts} ### `m` - Main view -| `D` | Toggle date display modes | -| `A` | Toggle author display modes | -| `X` | Toggle commit sha | -| `C` | Cherry pick a commit | +| Shortcut | Description | +| --- | --- | +| `X` | Toggle commit sha | +| `C` | Cherry pick a commit | {: .-shortcuts} ### `s` - Status view - -| `u` | Stage/unstage file or chunk | -| `!` | Revert file or chunk | -| `C` | Commit | -| `M` | Merge | -| `1` | Stage line | -| `[` `]` | Increase/decrease the diff context | +| Shortcut | Description | +| --- | --- | +| `u` | Stage/unstage file or chunk | +| `!` | Revert file or chunk | +| `C` | Commit | +| `M` | Merge with external tool | {: .-shortcuts} -### `h` - Branch view +### `c` - Stage view -| `i` | Change sort header | +| Shortcut | Description | +| --- | --- | +| `u` | Stage/unstage file or chunk | +| `!` | Revert file or chunk | +| `1` | Stage line | +| `\` | Split current diff hunk | +| `[` `]` | Increase/decrease the diff context | {: .-shortcuts} -### `h` - Blame view +### `d` - Diff view -| `,` | Parent commit | +| Shortcut | Description | +| --- | --- | +| `[` `]` | Increase/decrease the diff context | +{: .-shortcuts} + +### `y` - Stash view + +| Shortcut | Description | +| --- | --- | +| `A` | Apply selected stash | +| `P` | Pop selected stash | +| `!` | Drop selected stash | {: .-shortcuts}