Git Change Lists — JetBrains IDEs Sync
JetBrains-style change lists for VS Code — organize your uncommitted changes into logical groups, synced with IntelliJ-based IDEs.

Features
- Create change lists to organize your work (features, bugs, experiments)
- Move files between change lists with a click
- Stage & Commit directly from change lists or use built-in staging
- AI-powered commit messages with OpenAI, Anthropic, or local LLM support
- Sync with JetBrains IDEs — reads/writes
.idea/workspace.xml
- View diffs directly from the change list (like built-in SCM)
- Inline actions for quick stage/unstage operations
- Works alongside VS Code's Git — complements, doesn't replace
Quick Start
- Open a project with Git
- Click the Change Lists icon in the activity bar
- Click + to create a new change list
- Right-click files to move them between lists
- Stage files or commit entire change lists
Staging & Committing
Stage Files
- Click the + icon on any file to stage it
- Right-click a changelist and select "Stage All Files"
- Staged files appear in the "Staged Changes" section
Commit Changes
- Click the ✓ icon in the view title to commit
- Commit all staged files or commit an entire changelist
- Files are automatically removed from changelists after commit
Unstage Files
- Click the − icon on staged files to unstage
- Files return to their original changelist (when possible)
AI Commit Messages
Generate intelligent commit messages using AI:
- Stage some files
- Click the ✨ (sparkle) icon or run "Generate Commit Message (AI)"
- Optionally add context (e.g., "Bug fix for login issue")
- Select the generated message or edit it before committing
Supported AI Providers
| Provider |
Configuration |
| OpenAI |
Set gitChangeLists.ai.provider to openai and add your API key |
| Anthropic |
Set gitChangeLists.ai.provider to anthropic and add your API key |
| Local (Ollama) |
Set gitChangeLists.ai.provider to local and configure endpoint |
Configure in Settings → Extensions → Git Change Lists → AI.
Commands
| Command |
Shortcut |
Description |
Commit |
Cmd/Ctrl+Shift+C |
Commit staged files or changelist |
Generate Commit Message |
Cmd/Ctrl+Shift+G |
Generate AI commit message |
Stage File |
Cmd/Ctrl+Enter |
Stage selected file |
Unstage File |
Cmd/Ctrl+Backspace |
Unstage selected file |
Refresh |
Cmd/Ctrl+Shift+R |
Refresh change lists |
Create Change List |
|
Create a new change list |
Delete Change List |
|
Remove a list (moves files to default) |
Set as Default |
|
Make a list the default for new changes |
Move to Change List |
|
Move selected file(s) to another list |
Sync with Git |
|
Refresh change lists from git status |
Discard Changes |
|
Discard changes in a file |
Amend Last Commit |
|
Amend the previous commit |
Settings
| Setting |
Default |
Description |
gitChangeLists.ai.provider |
none |
AI provider: none, openai, anthropic, local |
gitChangeLists.ai.apiKey |
|
API key for OpenAI or Anthropic |
gitChangeLists.ai.model |
|
AI model (e.g., gpt-4o-mini, claude-3-haiku-20240307) |
gitChangeLists.ai.endpoint |
http://localhost:11434/api/generate |
Endpoint for local AI (Ollama) |
gitChangeLists.ai.temperature |
0.3 |
AI temperature (0-2) |
gitChangeLists.commitFormat |
conventional |
Commit format: conventional or simple |
JetBrains Sync
This extension reads and writes the same .idea/workspace.xml format used by:
- Android Studio
- IntelliJ IDEA
- WebStorm
- PyCharm
- All JetBrains IDEs
Your change lists stay in sync across editors.
Keyboard Shortcuts
| Shortcut |
Action |
Cmd/Ctrl+Shift+C |
Commit |
Cmd/Ctrl+Shift+G |
Generate AI commit message |
Cmd/Ctrl+Enter |
Stage file (when focused) |
Cmd/Ctrl+Backspace |
Unstage file (when focused) |
Cmd/Ctrl+Shift+R |
Refresh |
Links
Support
If you find this extension useful:
⭐ Star the GitHub repo
🐛 Found a bug? Open an issue
💡 Have a suggestion? Start a discussion
License
MIT
| |