A VS Code extension that provides an interactive graphical interface for cherry-picking commits between branches.
Features
Branch Selection - Choose source and target branches from a dropdown
Commit Search - Filter commits by message, file, or author
Interactive Selection - Select/deselect individual commits to cherry-pick
Squash Option - Combine multiple commits into a single commit
Branch Creation - Optionally create a new branch during cherry-pick
Push to Remote - Automatically push the new branch after cherry-picking
Conflict Detection - Reports conflicts when they occur during cherry-pick
Requirements
VS Code 1.85.0 or higher
Git installed and available in PATH
Installation
From VSIX File
Download the .vsix file from the releases
In VS Code, open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
Run "Extensions: Install from VSIX..."
Select the downloaded file
From Source
# Clone the repository
git clone <repository-url>
cd nighthawk-cherrypick
# Install dependencies
npm install
cd webview-ui && npm install && cd ..
# Build the extension
npm run build
# Package as VSIX
npm run package
Usage
Open a Git repository in VS Code
Open the Command Palette (Ctrl+Shift+P / Cmd+Shift+P)
Run "Cherry Pick: Open Interactive View"
Select your source and target branches
Search and select the commits you want to cherry-pick
Click "Cherry Pick" to apply the selected commits
You can also access the command from the Source Control view title bar.