Quick access to common Git commands directly from VS Code with a convenient keyboard shortcut.
- 🚀 Access Git commands with a single keyboard shortcut
- 🔍 Smart Fuzzy Search to quickly find commands
- 🔄 See incoming and outgoing commit counts beside Sync
- ❌ Cancel an active sync from its progress notification
- 📋 Review complete output from commands with installed Git hooks
- ⏸️ Prevent overlapping Sync actions while VS Code Git is busy
- 💻 User-friendly command interface
- 📦 Available commands:
Add- Stage changesCommit- Record changesCommit Amend- Update previous commitClone- Clone repositoriesPull- Get remote changesPush- Send local changesSync- Pull then push, with incoming and outgoing commit countsRename Branch- Change current branch name
- Press
Cmd+Shift+G(Mac) orCtrl+Shift+G(Windows/Linux) - Type to search commands with fuzzy matching:
- Type
amendto find "Commit Amend" - Type
pushoruploadto find "Push" - Type
renameto find "Rename Branch"
- Type
Press Cmd+Shift+P (Mac) or Ctrl+Shift+P (Windows/Linux) and type "Git Palette"
Commit, amend, edit-message, push, force-push, pull, sync, and clone actions stream stdout and stderr when a relevant executable local hook is installed. Repositories containing only sample hooks do not open the output view. Git Palette opens a focused readonly editor before the Git command starts and appends raw output as it arrives. Each command begins with a concise [timestamp] hook-name: git command header. Run Git Palette: Show Git Hooks Output to reopen the latest output.
Only the latest completed operation is retained for the current extension session. Git does not identify which output lines came from hooks, so the view can also contain ordinary Git progress, warnings, and remote messages.
The existing Git Palette: Toggle Git Hooks command keeps Git's standard --no-verify behavior. It bypasses supported verification hooks, but hooks that Git does not suppress can still run and appear in the output.
- Install dependencies and build the extension:
bun install bun run build
- Package the extension:
bun run package
- Install the generated
.vsixfile:Or in VS Code: Extensions sidebar →code --install-extension ./git-palette-0.1.0.vsix --force
...menu → Install from VSIX... → select the file. - Reload VS Code to activate the extension.
- Git installed and in your PATH
git-palette.autoAddFiles: Automatically add all files when committing (default: true)git-palette.alwaysAddAllChanges: Add all changes when using Git Add (true) or prompt for files (false)git-palette.showNotifications: Show result notifications for Git Palette commands (default: true)git-palette.showSyncNotifications: Show cancellable progress and result notifications for Git Sync (default: true)git-palette.showGitHooksOutput: Capture and show output from commands with relevant executable local hooks (default: true). Disabling it also disables the manual output command.git-palette.showGitHooksOutputTimestamps: Include ISO timestamps in Git hooks output headers (default: true)
- Press
Cmd+Shift+G(Mac) orCtrl+Shift+G(Windows/Linux) - Type "rename" to find the "Rename Branch" command
- Enter the new branch name in the input box
- The current branch will be renamed to the new name
- Install dependencies:
bun install
- Build the extension:
bun run build
- Open this project in VS Code and press
F5to build and launch the Extension Development Host.
Contributions are welcome! Feel free to submit a PR or open an issue.
This project is licensed under the MIT License - see the LICENSE file for details.
