Git Sync Notify
Get notified when your branch is behind the remote. Never miss a teammate's push again.
Never miss a teammate's push again. Git Sync Notify watches your branches in the background and alerts you the moment you fall behind, with a one-click pull right from the notification.
Features
When someone pushes to your branch, you get a notification that won't auto-dismiss with two actions:
- Pull Now — pulls immediately
- View Changes — shows incoming commits in the output panel
📊 Status Bar Indicator
Always-visible sync status in the bottom bar:
- ✅ In sync — you're up to date
- ⬇️ Behind — highlighted with warning background showing how many commits behind
🔍 Smart Notifications
Only notifies you when new commits arrive on the remote — doesn't repeatedly nag you for the same state.
📁 Multi-Repo Support
Works with:
- A single repo opened directly
- A parent folder containing multiple cloned repos (scans subdirectories up to 2 levels deep)
- Multi-root workspaces
⚡ Zero Dependencies
No third-party npm packages. Only uses Node.js built-ins and the VS Code API. The entire extension is a single TypeScript file (~400 lines), fully auditable.
How It Works
- On startup, the extension discovers all Git repos in your workspace
- Every N seconds (default: 120), it runs
git fetch to check for remote changes
- It compares your local branch against the remote tracking branch
- If you're behind → popup notification + status bar highlight
- Nothing changes in your code until you click "Pull Now"
It will never auto-pull. You are always in control.
Configuration
All settings are under gitSyncNotify.* in VS Code settings:
| Setting |
Default |
Description |
fetchIntervalSeconds |
120 |
How often to fetch and check (30–3600s) |
notificationLevel |
"warning" |
"information", "warning", or "error" |
showStatusBarItem |
true |
Show/hide the status bar indicator |
autoPullOnClick |
false |
Click status bar to pull (instead of just check) |
monitoredBranches |
[] |
Only monitor these branches (empty = all) |
enabled |
true |
Enable/disable the extension |
Example Settings
{
"gitSyncNotify.fetchIntervalSeconds": 60,
"gitSyncNotify.notificationLevel": "error",
"gitSyncNotify.monitoredBranches": ["main", "develop"],
"gitSyncNotify.autoPullOnClick": true
}
Commands
Open Command Palette (Ctrl+Shift+P / Cmd+Shift+P) and search for:
| Command |
Description |
Git Sync Notify: Check Now |
Manually fetch and check all repos |
Git Sync Notify: Pull Now |
Pull the current repo immediately |
Git Sync Notify: Toggle On/Off |
Enable or disable the extension |
Requirements
- VS Code 1.85.0 or later
- Git installed and available in PATH
- A Git repository with a remote tracking branch configured
Tip: If you see "No tracking remote" in the logs, run:
git branch --set-upstream-to=origin/<branch-name>
Troubleshooting
Open the Git Sync Notify output channel (Ctrl+Shift+P → "Output" → select "Git Sync Notify") to see detailed logs of every check cycle.
Common issues:
- "No Git repos found" — make sure your workspace folder is a Git repo or contains Git repos in subdirectories
- No notifications — check that your branch has an upstream tracking branch set
- Fetch fails — verify your Git credentials (SSH keys or HTTPS tokens) are working
Privacy & Security
- No telemetry — no data collection, no analytics, no phone-home
- No network calls other than
git fetch to your own configured remotes
- No third-party dependencies — nothing to supply-chain attack
- Fully open source — audit every line of code
License
MIT
Contributing
Issues and pull requests are welcome at the GitHub repository.
If this extension saves you from merge conflicts, consider leaving a ⭐ rating!