用途:把任意项目部署到 Vercel,并尽量让项目进入长期最佳状态——与 Vercel 关联并支持 git push 自动部署。默认部署为预览(preview),仅当用户明确要求时才用生产(--prod)。
主要能力与流程:
- 收集项目状态,依次检查四项:git remote get-url origin;cat .vercel/project.json 或 cat .vercel/repo.json 判断是否已链接;vercel whoami 判断 CLI 是否已安装并登录;vercel teams list --format json 列出可用团队。
- 团队选择:多团队时列出 slug 让用户选择,之后所有命令通过 --scope <team-slug> 指定;已链接项目由 orgId 决定团队,单团队或个人账号则跳过询问。
- 按状态选择部署方式:已链接且有 git 远程 → 先征得用户同意再 git add、git commit、git push,Vercel 自动构建,非生产分支为预览;已链接但无远程 → vercel deploy [path] -y --no-wait,再用 vercel inspect <deployment-url> 查看状态;未链接但 CLI 已登录 → 有远程用 vercel link --repo --scope <team-slug>,无远程用 vercel link --scope <team-slug>,再按上述方式部署;未链接且 CLI 未登录 → npm install -g vercel、vercel login,再链接并部署。
输出:始终向用户展示部署 URL。Git 推送方式可用 vercel ls --format json 找最新预览 URL;CLI 方式展示 vercel deploy --no-wait 返回的 URL,并用 vercel inspect 报告构建状态。不要 curl 或抓取部署 URL 验证。
限制:未登录 Vercel CLI 时必须停止,不得使用捆绑回退脚本、未认证部署端点或通过其他服务上传归档;网络不可用导致部署失败时报告并停止,不得改走其他端点;不要在未链接目录用 vercel project inspect、vercel ls 或 vercel link 探测状态,只有 vercel whoami 可安全运行;推送前必须获得用户明确同意。
适用场景:用户提出“部署我的应用”“部署并给我链接”“推送这个项目”等部署请求时使用。