Troubleshooting: Private GitHub Organization Repository Deployment Fails on the Vercel Hobby Plan
Yesterday, I got a github ci notification email telling me that my vercel deployment failed, right after I pushed a new post. The day before, everything had been working fine. Also, I did nothing to the team ci or vercel settings.
In the error log, I saw the following message:
Error: Git author **** must have access to the team ***'s projects on Vercel to create deployments.
Learn more: https://vercel.com/docs/deployments/troubleshoot-project-collaboration
Before diving in, let me clairify our setup:
- A private repository within a free, public GitHub organization
- Vercel Hobby Plan
Analysis
Clearly, the deployment failed due to permission issues. I checked the provided link:
The Hobby Plan does not support collaboration for private repositories. If you need collaboration, upgrade to the Pro Plan.
This was confusing, as our setup had worked fine just the day before!
Maybe something changed on Vercel’s side. I didn’t want to upgrade to a Pro Plan or change our repository type at this point. So, I decided to find a workaround.
The Solution
Phase 1: Change Git Commit User and Email in the Local Repository
After a quick search, Google’s AI Overview suggested a possible solution:
Confirm that the
user.name
anduser.email
configured in your local Git environment (e.g., usinggit config --global user.name "Your Name"
andgit config --global user.email "<your.email@example.com>"
) match the name and email associated with the Vercel account that owns the Hobby team.
I tried it and it worked!
However, this method comes at a cost: all future committers will be the same user!
Phase 2: Automate the Process in CI
Since this is all about the git committer identity, how about automating this in the CI pipeline?
Let’s try it! I added the following scripts to the ci.yaml in our team repository:
- name: Configure git identity for Vercel compatibility
run: |
git config user.name "your-vercel-username"
git config user.email "your-vercel-account-email"
git commit --amend --no-edit --author="your-vercel-username <your-vercel-account-email>"
echo "✅ Updated commit identity for Vercel compatibility"
Then I pushed again, the ci pipeline worked like before! And no other team members were affected!
Thanks to the help from Hu Weihong and Feng Yu.