Tech 3 min read

Why Vercel Stopped Deploying My Commits (and How I Fixed It)

The Problem: Vercel Ignoring New Commits

After setting up this site, I ran into a situation where pushing new commits to GitHub wasn’t triggering any Vercel deployments.

Things I Tried (That Didn’t Work)

  1. Re-connecting Vercel to GitHub: I disconnected and reconnected, deleted and recreated the project, and double-checked all GitHub auth settings — nothing changed.
  2. Checking the repository URL: The GitHub repo URL matched exactly what Vercel had on record, which made things even more confusing.

Root Cause: Outdated user.email in Local Git Config

The culprit was that the user.email saved in my local Git config (on my Windows PC) didn’t match the email address of my current GitHub/Vercel account.

This happened because I carried over the old Git config when migrating my dev environment from an older machine.

How It Works

Vercel detects pushes via GitHub Webhooks and uses them to trigger deployments. As part of this process, Vercel checks the commit author’s email to verify that the author has access to the Vercel team or account.

  1. Run git push locally
  2. Commit appears on GitHub
  3. GitHub fires a Webhook, notifying Vercel of the push
  4. Vercel checks the commit’s author email
  5. Email doesn’t match the Vercel account → deployment is silently skipped

When I tried to deploy via CLI, this error appeared:

Error: Git author XXXXXXX must have access to the team XXXXXXX's projects on Vercel to create deployments.

Fix: Align user.email with Your Vercel Account

The real fix is to set user.email to match your Vercel account’s email address.

1. Check the current setting

# Check global config
git config --global user.email

2. Update user.email

# Change globally (applies to all repos on this machine)
git config --global user.email "your-vercel-account@example.com"

# Or change only for this repo
git config user.email "your-vercel-account@example.com"

3. Force a new deployment

After fixing the email, create a new commit with the corrected author email and push it.

# Create an empty commit (signed with the new user.email)
git commit --allow-empty -m "Trigger deploy"
# Push
git push

Vercel picked up the change immediately and deployed the latest commit.


Takeaways

A few things to verify after this experience:

  1. Vercel validates the commit author email — it must match a Vercel account (or team member) to trigger a deployment.
  2. Watch your global Git config — when migrating machines or juggling multiple accounts, git config --global user.email can quietly end up wrong.
  3. Vercel’s dashboard shows nothing — the Webhook fires, but the email mismatch causes it to be silently ignored. The CLI is the only place where you’ll see the actual error message.

Whenever moving to a new dev environment, always verify that the Git config is up to date.