--- stage: Create group: IDE info: To determine the technical writer assigned to the Stage/Group associated with this page, see https://about.gitlab.com/handbook/product/ux/technical-writing/#assignments type: reference --- # GitLab keyboard shortcuts **(FREE)** GitLab has several keyboard shortcuts you can use to access its different features. To display a window in GitLab that lists its keyboard shortcuts, use one of the following methods: - Press ?. - In the Help menu, in the upper-right corner of the application, select **Keyboard shortcuts**. Although [global shortcuts](#global-shortcuts) work from any area of GitLab, you must be in specific pages for the other shortcuts to be available, as explained in each section. ## Global shortcuts These shortcuts are available in most areas of GitLab: | Keyboard shortcut | Description | |------------------------------------|-------------| | ? | Show or hide the shortcut reference sheet. | | Shift + p | Go to your Projects page. | | Shift + g | Go to your Groups page. | | Shift + a | Go to your Activity page. | | Shift + l | Go to your Milestones page. | | Shift + s | Go to your Snippets page. | | s / / | Put cursor in the search bar. | | f | Put cursor in the filter bar. | | Shift + i | Go to your Issues page. | | Shift + m | Go to your [Merge requests](project/merge_requests/index.md) page. | | Shift + r | Go to your Review requests page. | | Shift + t | Go to your To-Do List page. | | p, then b | Show or hide the Performance Bar. | | Escape | Hide tooltips or popovers. | | g, then x | Toggle between [GitLab](https://gitlab.com/) and [GitLab Next](https://next.gitlab.com/) (GitLab SaaS only). | | . | Open the [Web IDE](project/web_ide/index.md). | Additionally, the following shortcuts are available when editing text in text fields (for example, comments, replies, issue descriptions, and merge request descriptions): | macOS shortcut | Windows shortcut | Description | |----------------|------------------|-------------| | | | Edit your last comment. You must be in a blank text field below a thread, and you must already have at least one comment in the thread. | | Command + Shift + p | Control + Shift + p | Toggle Markdown preview when editing text in a text field that has **Write** and **Preview** tabs at the top. | | Command + b | Control + b | Bold the selected text (surround it with `**`). | | Command + i | Control + i | Italicize the selected text (surround it with `_`). | | Command + Shift + x | Control + Shift + x | Strike through the selected text (surround it with `~~`). | | Command + k | Control + k | Add a link (surround the selected text with `[]()`). | | Command + ] | Control + ] | Indent list item. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/351924) in GitLab 15.3. | | Command + [ | Control + [ | Outdent list item. [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/351924) in GitLab 15.3. | The shortcuts for editing in text fields are always enabled, even if other keyboard shortcuts are disabled. ## Project These shortcuts are available from any page in a project. You must type them relatively quickly to work, and they take you to another page in the project. | Keyboard shortcut | Description | |-----------------------------|-------------| | g + p | Go to the project home page (**Project > Details**). | | g + v | Go to the project activity feed (**Project > Activity**). | | g + r | Go to the project releases list (**Project > Releases**). | | g + f | Go to the [project files](#project-files) list (**Repository > Files**). | | t | Go to the project file search page. (**Repository > Files**, select **Find Files**). | | g + c | Go to the project commits list (**Repository > Commits**). | | g + n | Go to the [repository graph](#repository-graph) page (**Repository > Graph**). | | g + d | Go to repository charts (**Analytics > Repository Analytics**). | | g + i | Go to the project issues list (**Issues > List**). | | i | Go to the New Issue page (**Issues**, select **New Issue** ). | | g + b | Go to the project issue boards list (**Issues > Boards**). | | g + m | Go to the project [merge requests](project/merge_requests/index.md) list (**Merge Requests**). | | g + j | Go to the CI/CD jobs list (**CI/CD > Jobs**). | | g + e | Go to the project environments (**Deployments > Environments**). | | g + k | Go to the project Kubernetes cluster integration page (**Infrastructure > Kubernetes clusters**). You must have at least [`maintainer` permissions](permissions.md) to access this page. | | g + s | Go to the project snippets list (**Snippets**). | | g + w | Go to the [project wiki](project/wiki/index.md) (**Wiki**), if enabled. | | . | Open the [Web IDE](project/web_ide/index.md). | ### Issues These shortcuts are available when viewing issues: | Keyboard shortcut | Description | |------------------------------|-------------| | e | Edit description. | | a | Change assignee. | | m | Change milestone. | | l | Change label. | | r | Start writing a comment. Pre-selected text is quoted in the comment. Can't be used to reply in a thread. | | . | Open the [Web IDE](project/web_ide/index.md). | | | Go to the next design. | | | Go to the previous design. | | Escape | Close the design. | ### Merge requests These shortcuts are available when viewing [merge requests](project/merge_requests/index.md): | macOS shortcut | Windows shortcut | Description | |-----------------------------------|---------------------|-------------| | ] or j | | Move to next file. | | [ or k | | Move to previous file. | | Command + p | Control + p | Search for, and then jump to a file for review. | | n | | Move to next unresolved discussion. | | p | | Move to previous unresolved discussion. | | b | | Copy source branch name. | | r | | Start writing a comment. Pre-selected text is quoted in the comment. Can't be used to reply in a thread. | | c | | Move to next commit. | | x | | Move to previous commit. | ### Project files These shortcuts are available when browsing the files in a project (go to **Repository > Files**): | Keyboard shortcut | Description | |-------------------|-------------| | | Move selection up. | | | Move selection down. | | Enter | Open selection. | | Escape | Go back to file list screen (only while searching for files, **Repository > Files**, then select **Find File**). | | y | Go to file permalink (only while viewing a file). | | . | Open the [Web IDE](project/web_ide/index.md). | ### Web IDE These shortcuts are available when editing a file with the [Web IDE](project/web_ide/index.md): | macOS shortcut | Windows/Linux shortcut | Description | |---------------------------------|---------------------|-------------| | Option + Command + | Shift + Alt + | Add cursor above | | Option + Command + | Shift + Alt + | Add cursor below | | Shift + Option + I | Shift + Alt + I | Add cursors to line ends | | Command + K, Command + C | Control + K, Control + C _or_ Control + / | Add line comment | | Command + D | Control + D | Add selection to next find match | | Command + F2 | Control + F2 | Change all occurrences | | F1 | F1 | Command palette | | Shift + Option + | Control + Shift + Alt + | Copy line down | | Shift + Option + | Control + Shift + Alt + | Copy line up [(Linux note)](#linux-shortcuts) | | Command + U | Control + U | Cursor undo | | Command + Backspace | Control + Shift + Backspace | Delete all left | | Control + K | | Delete all right | | Shift + Command + K | Control + Shift + K | Delete line | | | Control + Backspace | Delete word | | Control + Shift + Command + | Shift + Alt + | Expand selection | | Command + P | Control + P | File finder | | Command + F | Control + F | Find | | Enter | Enter or F3 | Find next | | Command + F3 | F3 | Find next selection [(Linux note)](#linux-shortcuts) | | Shift + Enter + F3 | Shift + F3 | Find previous | | Shift + Command + F3 | Shift + F3 | Find previous selection | | Command + E | | Find with selection | | Option + Command + [ | Control + Shift + [ | Fold | | Command + K, then Command + O | Control + K, then Control + O | Fold all | | Command + K, then Command + / | Control + K, then Control + / | Fold all block comments | | Command + K , then Command + 8 | Control + K , then Control + 8 | Fold all regions | | Command + K , then Command + - | Control + K , then Control + - | Fold all regions except selected | | Command + K , then Command + 1 | Control + K , then Control + 1 | Fold level 1 | | Command + K , then Command + 2 | Control + K , then Control + 2 | Fold level 2 | | Command + K , then Command + 3 | Control + K , then Control + 3 | Fold level 3 | | Command + K , then Command + 4 | Control + K , then Control + 4 | Fold level 4 | | Command + K , then Command + 5 | Control + K , then Control + 5 | Fold level 5 | | Command + K , then Command + 6 | Control + K , then Control + 6 | Fold level 6 | | Command + K , then Command + 7 | Control + K , then Control + 7 | Fold level 7 | | Command + K , then Command + [ | Control + K , then Control + [ | Fold recursively | | Shift + Command + \ | Control + Shift + \ | Go to bracket | | Control + G | Control + G | Go to line or column | | Option + F8 | Alt + F8 | Go to next problem (error, warning, information) | | F8 | F8 | Go to next problem in files (error, warning, information) | | Shift + Option + F8 | Shift + Alt + F8 | Go to previous problem (error, warning, information) | | Shift + F8 | Shift + F8 | Go to previous problem in files (error, warning, information) | | Command + ] | Control + ] | Indent line | | Shift + Command | Control + Shift + Enter | Insert line above | | Command + Enter | Control + Enter | Insert line below | | Control + J | Control + J | Join lines [(Linux note)](#linux-shortcuts) | | Command + K, then Command + D | Control + K, then Control + D | Move last selection to next find match | | Option + | Alt + | Move line down | | Option + | Alt + | Move line up | | Command + [ | Control + [ | Outdent line | | Shift + Command + P | Control + Shift + P | Preview Markdown [(Linux note)](#linux-shortcuts) | | Command + K, then Command + U | Control + K, then Control + U or Control + / | Remove line comment | | Option + Command + F | Control + F | Replace | | Shift + Command + . | Control + Shift + . | Replace with next value | | Shift + Command + , | Control + Shift + , | Replace with previous value | | Command + S | Control + S | Save files | | Shift + Command + L | Control + Shift + L | Select all occurrences of find match | | Command + K, then Command + B | Control + K, then Control + B | Set selection anchor | | Option + F1 | Shift + Alt + F1 | Show accessibility help | | Shift + F10 | Shift + F10 | Show editor context menu | | Command + K, then Command + I | Control + K, then Control + I | Show hover | | Control + Shift + Command + | Shift + Alt + | Shrink selection | | Shift + Option + A | Control + Shift + A | Toggle block comment | | Command + K, then Command + L | Control + K, then Control + L | Toggle fold | | Control + Shift + M | Control + M | Toggle Tab key moves focus | | Command + / | Control + / | Toggle line comment | | Control + T | | Transpose letters | | Control + Space | Control + Space | Trigger Suggest | | Command + K, then Command + X | Control + K, then Control + X | Trim trailing whitespace | | Option + Command + ] | Control + Shift + ] | Unfold | | Command + K, then Command + J | Control + K, then Control + J | Unfold all | | Command + K, then Command + 9 | Control + K, then Control + 9 | Unfold all regions | | Command + K, then Command + = | Control + K, then Control + = | Unfold all regions except selected | | Command + K, then Command + ] | Control + K, then Control + ] | Unfold recursively | | Command + K, then Command + X | Control + K, then Control + X | Trim trailing whitespace | | Command + Enter | Control + Enter | Commit (when editing the commit message). | ### Repository graph These shortcuts are available when viewing the project [repository graph](project/repository/index.md#repository-history-graph) page (go to **Repository > Graph**): | Keyboard shortcut | Description | |--------------------------------------------------------------------|-------------| | or h | Scroll left. | | or l | Scroll right. | | or k | Scroll up. | | or j | Scroll down. | | Shift + or Shift + k | Scroll to top. | | Shift + or Shift + j | Scroll to bottom. | ### Wiki pages This shortcut is available when viewing a [wiki page](project/wiki/index.md): | Keyboard shortcut | Description | |-------------------|-----------------| | e | Edit wiki page. | ### Content editor These shortcuts are available when editing a file with the [Content Editor](https://about.gitlab.com/direction/plan/knowledge/content_editor/): | macOS shortcut | Windows shortcut | Description | |----------------|------------------|-------------| | Command + C | Control + C | Copy | | Command + X | Control + X | Cut | | Command + V | Control + V | Paste | | Command + Shift + V | Control + Shift + V | Paste without formatting | | Command + Z | Control + Z | Undo | | Command + Shift + V | Control + Shift + V | Redo | | Shift + Enter | Shift + Enter | Add a line break | #### Formatting | macOS shortcut | Windows/Linux shortcut | Description | |----------------|------------------------|-------------| | Command + b | Control + b | Bold | | Command + i | Control + i | Italic | | Command + Shift + x | Control + Shift + x | Strikethrough | | Command + e | Control + e | Code | | Command + Alt + 0 | Control + Alt + 0 | Apply normal text style | | Command + Alt + 1 | Control + Alt + 1 | Apply heading style 1 | | Command + Alt + 2 | Control + Alt + 2 | Apply heading style 2 | | Command + Alt + 3 | Control + Alt + 3 | Apply heading style 3 | | Command + Alt + 4 | Control + Alt + 4 | Apply heading style 4 | | Command + Alt + 5 | Control + Alt + 5 | Apply heading style 5 | | Command + Alt + 6 | Control + Alt + 6 | Apply heading style 6 | | Command + Shift + 7 | Control + Shift + 7 | Ordered list | | Command + Shift + 8 | Control + Shift + 8 | Unordered list | | Command + Shift + 9 | Control + Shift + 9 | Task list | | Command + Shift + b | Control + Shift + b | Blockquote | | Command + Alt + c | Control + Alt + c | Code block | | Command + Shift + h | Control + Shift + h | Highlight | | Command + , | Control + , | Subscript | | Command + . | Control + . | Superscript | | Tab | Tab | Indent list | | Shift + Tab | Shift + Tab | Outdent list | #### Text selection | macOS shortcut | Windows shortcut | Description | |-----------------------------------|-----------------------------------|-------------| | Command + a | Control + a | Select all | | Shift + | Shift + | Extend selection one character to left | | Shift + | Shift + | Extend selection one character to right | | Shift + | Shift + | Extend selection one line up | | Shift + | Shift + | Extend selection one line down | | Command + Shift + | Control + Shift + | Extend selection to the beginning of the document | | Command + Shift + | Control + Shift + | Extend selection to the end of the document | ### Filtered search These shortcuts are available when using a [filtered search input](search/index.md): | macOS shortcut | Windows shortcut | Description | |----------------------|----------------------------------------|-------------| | Command | Delete | Clear entire search filter. | | Option | Control + Delete | Clear one token at a time. | ## Epics **(PREMIUM)** These shortcuts are available when viewing [epics](group/epics/index.md): | Keyboard shortcut | Description | |-------------------|-------------------| | r | Start writing a comment. Pre-selected text is quoted in the comment. Can't be used to reply in a thread. | | e | Edit description. | | l | Change label. | ## Metrics These shortcuts are available when using metrics: | Keyboard shortcut | Description | |-------------------|---------------------| | e | Expand panel. | | l | View logs. | | d | Download CSV. | | c | Copy link to chart. | | a | Alerts. | ## Disable keyboard shortcuts > [Introduced](https://gitlab.com/gitlab-org/gitlab/-/issues/22113) in GitLab 12.8. To disable keyboard shortcuts: 1. While viewing a page that supports keyboard shortcuts, and outside a text box, press ? to display the list of shortcuts. 1. Select **Toggle shortcuts**. ## Enable keyboard shortcuts To enable keyboard shortcuts: 1. On the top bar, select the Help menu (**{question}**), then **Keyboard shortcuts**. 1. Select **Toggle shortcuts**. ## Troubleshooting ### Linux shortcuts Linux users may encounter GitLab keyboard shortcuts that are overridden by their operating system, or their browser.