GitLab Keyboard Shortcuts: The Complete List for Mac & Windows
GitLab keyboard shortcuts let you navigate and work in GitLab without reaching for the mouse jumping between projects, issues, and merge requests, reviewing code, and editing Markdown using key combinations alone. To see every shortcut available on your current screen, press ? anywhere in GitLab to open the built-in reference sheet.
This guide lists all GitLab keyboard shortcuts, verified against the latest version and organized by where they work global shortcuts that work anywhere, and context shortcuts for projects, issues, and merge requests. Mac and Windows keys are included throughout, plus a free PDF you can download below.
Global Shortcuts (work anywhere in GitLab)
| Action | Shortcut |
|---|---|
| Show or hide shortcut reference sheet | ? |
| Go to homepage | Shift + H |
| Go to your Projects page | Shift + P |
| Go to your Groups page | Shift + G |
| Go to your Activity page | Shift + A |
| Go to your Milestones page | Shift + L |
| Go to your Snippets page | Shift + S |
| Go to your Issues page | Shift + I |
| Go to your Merge requests page | Shift + M |
| Go to your Review requests page | Shift + R |
| Go to your To-Do List | Shift + T |
| Focus the search bar | S or / |
| Focus the filter bar | F |
| Show or hide the Performance Bar | P then B |
| Toggle GitLab / GitLab Next (GitLab.com only) | G then X |
| Open the Web IDE | . |
| Open GitLab Duo Chat | D |
| Hide tooltips or popovers | Esc |
Project Shortcuts (work inside any project)
| Action | Shortcut |
|---|---|
| Go to Project overview | G then O |
| Go to project Activity | G then V |
| Go to project Releases | G then R |
| Go to project Files (repository) | G then F |
| Open file search dialog | T |
| Go to project Commits | G then C |
| Go to Repository graph | G then N |
| Go to Repository analytics | G then D |
| Go to Work items | G then I |
| Go to New Issue page | I |
| Go to Issue boards | G then B |
| Go to project Merge requests | G then M |
| Go to CI/CD Pipelines | G then P |
| Go to CI/CD Jobs | G then J |
| Go to Environments | G then E |
| Go to Kubernetes clusters (maintainer+) | G then K |
| Go to project Snippets | G then S |
| Go to project Wiki (if enabled) | G then W |
| Open the Web IDE | . |
Issue Shortcuts (when viewing an issue)
| Action | Shortcut |
|---|---|
| Edit description | E |
| Change assignee | A |
| Change milestone | M |
| Change label | L |
| Copy issue reference | C then R |
| Start writing a comment | R |
| Go to next design | → |
| Go to previous design | ← |
| Close the design | Esc |
Merge Request Shortcuts (when viewing an MR)
| Action | macOS | Windows |
|---|---|---|
| Move to next file | ] or J | ] or J |
| Move to previous file | [ or K | [ or K |
| Search and jump to a file | Command + P | Control + P |
| Move to next open thread | N | N |
| Move to previous open thread | P | P |
| Copy source branch name | B | B |
| Copy merge request reference | C then R | C then R |
| Start writing a comment | R | R |
| Publish comment immediately | Shift + Command + Enter | Shift + Control + Enter |
| Add comment in pending state (review) | Command + Enter | Control + Enter |
| Move to next commit | C | C |
| Move to previous commit | X | X |
| Toggle file browser | Shift + F | Shift + F |
| Mark file as viewed / unviewed | V | V |
| Expand all files | ; | ; |
| Collapse all files | Shift + ; | Shift + ; |
| Toggle inline / side-by-side diff | Shift + D | Shift + D |
Text Editing Shortcuts (comments, descriptions, replies)
| Action | macOS | Windows |
|---|---|---|
| Edit your last comment | ↑ | ↑ |
| Toggle Markdown preview | Command + Shift + P | Control + Shift + P |
| Bold | Command + B | Control + B |
| Italic | Command + I | Control + I |
| Strikethrough | Command + Shift + X | Control + Shift + X |
| Insert link | Command + K | Control + K |
| Indent text | Command + ] | Control + ] |
| Outdent text | Command + [ | Control + [ |
| Submit / save changes | Command + Enter | Control + Enter |
Rich Text Editor — Formatting
| Action | macOS | Windows / Linux |
|---|---|---|
| Bold | Command + B | Control + B |
| Italic | Command + I | Control + I |
| Strikethrough | Command + Shift + X | Control + Shift + X |
| Insert a link | Command + K | Control + K |
| Normal text style | Command + Option + 0 | Control + Alt + 0 |
| Heading 1–6 | Command + Option + 1–6 | Control + Alt + 1–6 |
| Ordered list | Command + Shift + 7 | Control + Shift + 7 |
| Unordered list | Command + Shift + 8 | Control + Shift + 8 |
| Task list | Command + Shift + 9 | Control + Shift + 9 |
| Code block | Command + Option + C | Control + Alt + C |
| Highlight | Command + Shift + H | Control + Shift + H |
| Subscript | Command + , | Control + , |
| Superscript | Command + . | Control + . |
| Indent list | Tab | Tab |
| Outdent list | Shift + Tab | Shift + Tab |
Rich Text Editor — Editing & Selection
| Action | macOS | Windows |
|---|---|---|
| Copy | Command + C | Control + C |
| Cut | Command + X | Control + X |
| Paste | Command + V | Control + V |
| Paste without formatting | Command + Shift + V | Control + Shift + V |
| Undo | Command + Z | Control + Z |
| Add a line break | Shift + Enter | Shift + Enter |
| Select all | Command + A | Control + A |
| Extend selection by character | Shift + ← / → | Shift + ← / → |
| Extend selection by line | Shift + ↑ / ↓ | Shift + ↑ / ↓ |
| Extend selection to start of document | Command + Shift + ↑ | Control + Shift + ↑ |
| Extend selection to end of document | Command + Shift + ↓ | Control + Shift + ↓ |
Project Files Shortcuts (browsing the repository)
| Action | Shortcut |
|---|---|
| Move selection up (in Find File) | ↑ |
| Move selection down (in Find File) | ↓ |
| Open selection (in Find File) | Enter |
| Go back to Find File screen | Esc |
| Go to file permalink (when viewing a file) | Y |
| Open the Web IDE | . |
Repository Graph Shortcuts
| Action | Shortcut |
|---|---|
| Scroll left | ← or H |
| Scroll right | → or L |
| Scroll up | ↑ or K |
| Scroll down | ↓ or J |
| Scroll to top | Shift + ↑ or Shift + K |
| Scroll to bottom | Shift + ↓ or Shift + J |
Epic Shortcuts (Premium/Ultimate, when viewing an epic)
| Action | Shortcut |
|---|---|
| Edit description | E |
| Change label | L |
| Copy epic reference | C then R |
Wiki & Incident Shortcuts
| Action | Shortcut |
|---|---|
| Edit wiki page (when viewing a wiki page) | E |
| Copy incident reference (when viewing an incident) | C then R |
GitLab Duo Chat Shortcuts (in supported IDEs)
| Action | macOS | Windows |
|---|---|---|
| Open/close Chat (or focus it) | Option + D | Alt + D |
| Start a new conversation (VS Code) | Option + N | Alt + N |
| Refactor code (VS Code) | Option + R | Alt + R |
| Write tests (VS Code) | Option + T | Alt + T |
How to Enable or Disable GitLab Shortcuts
Since GitLab 16.4, the enable/disable toggle lives in your user preferences rather than the shortcuts window. To turn shortcuts off:
- In the upper-right corner, select your avatar.
- Select Preferences.
- In the Behavior section, clear the Enable keyboard shortcuts checkbox.
- Select Save changes.
To re-enable them, follow the same steps and select the checkbox instead.
One useful exception: the text-field editing shortcuts (bold, italic, link, submit) stay active even when keyboard shortcuts are disabled, so you keep your Markdown formatting keys either way.
Why aren’t my GitLab keyboard shortcuts working?
The most common reasons: shortcuts are disabled in your preferences (see above); you’re not on the right page (project and issue shortcuts only work inside a project or issue, not on the dashboard); or your operating system or browser is intercepting the key combination. GitLab notes that Linux users in particular may find some shortcuts overridden by the OS or browser. Pressing ? shows which shortcuts are active on your current screen.
FAQs
How do I see all keyboard shortcuts in GitLab?
Press ? anywhere in GitLab to open the shortcut reference sheet, or select Help in the lower-left corner and choose Keyboard shortcuts. The sheet shows the shortcuts available on your current screen.
What is the shortcut to open the Web IDE in GitLab?
Press . (the period key) from any project or file view to open the Web IDE.
How do I disable keyboard shortcuts in GitLab?
Select your avatar → Preferences → Behavior, then clear the Enable keyboard shortcuts checkbox and save. This option moved to preferences in GitLab 16.4.
Do GitLab keyboard shortcuts work on Mac?
Yes. Navigation shortcuts are identical on Mac and Windows. For text editing, Mac uses Command where Windows uses Control for example, Command + B versus Control + B for bold.
What’s the difference between Shift shortcuts and g shortcuts?
Shift + a key is a global shortcut that works anywhere (for example, Shift + P for Projects). g then a key is a project shortcut that only works inside a project (for example, g then o for the project overview).
How do I open GitLab Duo Chat with a shortcut?
Press D in GitLab. In a supported IDE, use Option + D (Mac) or Alt + D (Windows) to open or close Duo Chat.
What is the shortcut to start a comment on an issue or merge request?
Press R while viewing the issue or merge request. Any text you’ve selected is quoted in your comment.
Why do some shortcuts need two keys pressed quickly?
Project shortcuts use a sequence like g then o. You must press the two keys in quick succession for GitLab to register them as a shortcut rather than two separate keystrokes.
Master Your GitLab Workflow
Keyboard shortcuts are one of the fastest ways to cut friction out of your day every time your hands stay on the keyboard instead of reaching for the mouse, you save a few seconds, and across a full day of issues, reviews, and commits, that adds up. Start with the ? key to see what’s available on any screen, learn the handful of global shortcuts you’ll use most (Shift + P, Shift + I, Shift + M), then add merge-request review keys as they become second nature. Bookmark this page or grab the PDF, and you’ll have the full reference whenever you need it.
READ NEXT:





