0
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?

Cloudflare Pagesでブランチをpushするとデプロイされる?「プレビュー ブランチ」を無効にする方法

0
Posted at

Cloudflare PagesとGitHubを連携している環境で、アプリを修正するために新しいブランチを作成しました。

git switch -c feature/update

修正してGitHubへpushします。

git push origin feature/update

すると、Cloudflare Pagesでデプロイが始まりました。

「まだ開発中なのに、なぜデプロイされるの?」

と少し困惑しました。

これはCloudflare Pagesの 「プレビュー ブランチ」 の設定によるものでした。

本番ブランチ以外を自動デプロイしたくない場合は、設定を変更できます。

1. 起こったこと

Cloudflare Pagesでは、GitHubのmainブランチを本番環境用のブランチとして設定しています。

その状態で、開発用のブランチを作成してpushしました。

main
 ↓
本番環境

feature/update
 ↓
GitHubへpush
 ↓
Cloudflare Pagesでもデプロイ開始

開発用ブランチをpushしただけだったので、

「なぜデプロイされたの?」

となりました。

確認すると、本番環境へのデプロイではなく、プレビュー用のデプロイでした。

2. なぜこのような事象が起きたのか

原因は、Cloudflare Pagesの 「プレビュー ブランチ」 の設定です。

GitHubなどのGitプロバイダーと連携したPagesプロジェクトでは、Production branch以外のブランチをプレビューデプロイの対象にできます。

現在の設定では、デフォルトで

すべての本番環境にないブランチ

が選択されています。

つまり、Production branchがmainの場合、

main
 ↓
本番環境へのデプロイ

feature/*
fix/*
test/*
その他のブランチ
 ↓
プレビューデプロイ

という動作になります。

そのため、今回のように開発用ブランチを作ってpushすると、Cloudflare Pagesでも自動的にデプロイが実行されます。

3. 「プレビュー ブランチ」をOFFにする方法

本番環境以外のブランチを自動デプロイしたくない場合は、 「プレビュー ブランチ」を「なし」 に変更します。

Cloudflareのダッシュボードで対象のPagesプロジェクトを開きます。

「設定」→「ブランチ コントロール」

と進み、「ブランチ コントロール」の編集画面を開きます。

設定画面には、次の項目があります。

プロダクション ブランチ

ここでは、本番環境に使用するブランチを指定します。

今回の例では、

main

です。

プレビュー ブランチ

ここが今回変更する場所です。

デフォルトでは、

○ すべての本番環境にないブランチ

が選択されています。

これを、

● なし(自動ブランチ デプロイを無効にします)

に変更します。

最後に 「保存」 をクリックします。

これで、Production branch以外のブランチをpushしても、プレビューデプロイが自動的に実行されなくなります。

設定の選択肢

「プレビュー ブランチ」には、次の3つの選択肢があります。

設定 動作
すべての本番環境にないブランチ Production branch以外を自動デプロイ
なし(自動ブランチ デプロイを無効にします) プレビューデプロイを無効化
カスタム ブランチ 指定したブランチだけ自動デプロイ

「本番環境にはmainだけをデプロイしたい」という運用なら、 「なし(自動ブランチ デプロイを無効にします)」 を選択すればOKです。

スクリーンショット 2026-08-22 201446.png

4. そもそも「プレビュー ブランチ」とは?

「プレビュー ブランチ」は、Production branchにマージする前の変更を、本番環境とは別の環境で確認するための機能です。

例えば、

main
 ↓
本番環境

feature/update
 ↓
プレビュー環境

という使い分けができます。

開発中の変更を実際のWeb環境で確認できるため、便利な機能です。

一方で、今回のように、

GitHubにpushする
↓
mainだけCloudflare Pagesにデプロイしたい

という運用では、プレビュー ブランチを有効にしておく必要はありません。

注意点

もう一つ覚えておきたいのが、GitHubのブランチを削除しても、Cloudflare Pagesのデプロイが削除されるわけではないということです。

例えば、

feature/update
 ↓
GitHubへpush
 ↓
プレビューデプロイ作成
 ↓
GitHubでfeature/updateを削除

とした場合でも、Cloudflare Pages側のデプロイは残ります。

GitHubでのブランチ削除と、Cloudflare Pagesのデプロイ削除は別の操作です。

不要になったデプロイは、Cloudflare Pages側で手動で削除する必要があります。

まとめ

Cloudflare PagesとGitHubを連携していると、デフォルトでは 「すべての本番環境にないブランチ」 が「プレビュー ブランチ」の対象になっています。

そのため、

git switch -c feature/update
git push origin feature/update

としただけでも、Cloudflare Pagesでプレビューデプロイが実行されます。

本番環境にはmainだけをデプロイしたい場合は、

設定 → ブランチ コントロール → プレビュー ブランチ → 「なし(自動ブランチ デプロイを無効にします)」

に変更します。

今回のように「ブランチをpushしたらデプロイされてしまった」という場合は、まず本番環境へのデプロイなのか、プレビューデプロイなのかを確認しましょう。

そしてプレビューデプロイが不要なら、「プレビュー ブランチ」をOFFにしてしまえばOKです。

なお、設定変更前に作成されたプレビューデプロイは、設定をOFFにしただけでは削除されません。不要なものはCloudflare Pages側で整理する必要があります。

0
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
0
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?