You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何阻止Vercel中非生产分支的预览构建?

阻止Vercel中非生产分支的预览构建(Monorepo场景)

方法1:利用Ignored Build Step功能

  • 打开Vercel项目的「Settings」→「Git」页面
  • 在「Ignored Build Step」输入框中填入分支判断脚本:
    if [ "$VERCEL_GIT_COMMIT_REF" != "main" ]; then exit 0; else exit 1; fi
    
    逻辑说明:VERCEL_GIT_COMMIT_REF是Vercel内置环境变量,对应当前推送的分支名。如果不是指定的生产分支(比如这里的main),返回0触发构建跳过;否则返回1执行正常构建。

方法2:通过vercel.json配置文件控制

在项目根目录(或Monorepo中子应用的根目录)创建/修改vercel.json,添加构建忽略规则:

{
  "build": {
    "ignoreCommand": "if [ \"$VERCEL_GIT_COMMIT_REF\" != \"main\" ]; then exit 0; fi"
  }
}

如果是多应用Monorepo,可给每个子应用单独配置该文件,实现更细粒度的控制。

方法3:使用分支保护设置

  • 进入Vercel项目的「Settings」→「Git」→「Branch Protection」
  • 在「Preview Deployments」区域选择「Only specified branches」,然后添加你的生产分支(如main、master)
  • 配置完成后,只有指定分支推送时才会触发预览构建,其余分支直接跳过。

注意事项

如果你的Monorepo使用Turbo、Nx等构建工具,可结合工具本身的增量构建逻辑,但上述方法依然能直接阻止非生产分支的全量/预览构建触发。

内容的提问来源于stack exchange,提问作者Hyeongrok

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 07:40:35