コンテンツにスキップ

ビルド監視パスの設定

GitリポジトリをPagesに接続すると、デフォルトではリポジトリ内の任意のファイルの変更がPagesのビルドをトリガーします。特定のパスを含めるか除外するようにPagesを設定することで、特定のパスに対してビルドをスキップするかどうかを指定できます。これは、モノレポプロジェクト構造を使用している場合や、ビルドの発生を制限したい場合に特に役立ちます。

パスの設定

含めるパスと除外するパスを設定するには、Pagesプロジェクト > 設定 > ビルドとデプロイ > ビルド監視パスに移動します。Pagesはデフォルトでプロジェクトの含めるパスをすべて([*])に、除外するパスを何もない([])に設定します。

設定フィールドは2つの方法で入力できます:

  • 静的ファイルパス: 含めるか除外するファイルの正確な名前を入力します(例:docs/README.md)。
  • ワイルドカード構文: ワイルドカードを使用して複数のパスディレクトリに一致させます。ルールの先頭または末尾にワイルドカードを指定できます。

プッシュイベント内の各パスについて、ビルド監視パスは次のように評価されます:

  • 除外条件を満たすパスは最初に無視されます
  • 残りのパスは含める条件に対してチェックされます
  • 一致するパスが見つかった場合、ビルドがトリガーされます。そうでない場合はビルドがスキップされます

Pagesは、次の場合にプッシュイベントのパス一致をバイパスし、プロジェクトのビルドをデフォルトで行います:

  • プッシュイベントにファイル変更が0件含まれている場合(ユーザーが空のプッシュイベントをプッシュしてビルドをトリガーする場合)
  • プッシュイベントに3000件以上のファイル変更または20件以上のコミットが含まれている場合

例1

特定のディレクトリ内のすべての変更からビルドをトリガーしたい場合、たとえばproject-a/packages/フォルダ内のすべての変更の場合:

  • 含めるパス: project-a/*, packages/*
  • 除外するパス: “

例2

任意の変更からビルドをトリガーしたいが、特定のディレクトリへの変更を除外したい場合、たとえばdocs/ディレクトリ内のすべての変更の場合:

  • 含めるパス: *
  • 除外するパス: docs/*

例3

特定のファイルまたは特定のファイルタイプ、たとえば.mdで終わるすべてのファイルに対してビルドをトリガーしたい場合:

  • 含めるパス: *.md
  • 除外するパス: “