2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Vercel】Vercelのpush時自動デプロイを無効化する方法

2
Last updated at Posted at 2026-01-05

はじめに

VercelとGitHubのリポジトリを連携すると、push`したタイミングで自動的にデプロイが実行されます。

私の場合、GitHub ActionsでもVercelへのデプロイを行っていたため、push時の自動デプロイと GitHub Actionsによるデプロイで二重にデプロイされることがありました。

そこで今回は、

  • 特定のブランチ(例:dev)では自動デプロイしない

  • CI/CD(GitHub Actions)側でデプロイを制御したい

といったケースを想定し、Vercelの自動デプロイを制御する方法をまとめます。

この記事は個人的なアウトプットを目的として作成したものです。そのため、誤った情報や不足している内容が含まれている可能性があります。もし間違いや気になる点がございましたら、ぜひご指摘いただけますと幸いです

方法

ブランチごとに自動デプロイを制御する方法

公式ドキュメントに記載されている方法です。
vercel.tsまたはvercel.jsongit.deploymentEnabledを設定することで、ブランチ単位でデプロイの有無を制御できます。

以下の例では、devブランチへのpushではデプロイされないように設定しています。

vercel.ts
import type { VercelConfig } from "@vercel/config/v1";

export const config: VercelConfig = {
  git: {
    deploymentEnabled: {
      "dev": false,
    },
  },
};

vercel.json
{
  "$schema": "https://openapi.vercel.sh/vercel.json",
  "git": {
    "deploymentEnabled": {
      "dev": false
    }
  }
}

push時の自動デプロイをすべて無効化したい場合

すべてのブランチでpush時の自動デプロイを無効化したい場合は、deploymentEnabledfalseに設定します。

vercel.ts
import type { VercelConfig } from '@vercel/config/v1';
 
export const config: VercelConfig = {
  git: {
    deploymentEnabled: false,
  },
};
vercel.json
{
  "$schema": "https://openapi.vercel.sh/vercel.json",
  "git": {
    "deploymentEnabled": false
  }
}

これにより、pushしても自動ではデプロイされず、GitHub Actions側でのみデプロイを行う構成にできます。

終わりに

これまでpush時に自動でデプロイされることに特に疑問を持っていませんでしたが、ブランチごとに挙動を変えたい場合や、CI/CDで一元管理したい場合には非常に有効な設定だと感じました。

参考

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?