Skip to content
Latchkey

Merge Queue Batching - CI/CD用語集の定義

merge queue batchingは複数のプルリクエストを1つの結合された変更としてテストするので、1回のグリーンな実行でバッチ全体をマージします。失敗したバッチは二分探索され、悪いPRを取り除いて残りを再キューします。

merge queue batchingは、キューに入った複数のプルリクエストをグループ化し、ターゲットブランチに対してまとめてテストします。これにより、1回のCI実行で複数のマージを検証できます。バッチが失敗した場合、キューは二分探索して問題のある変更を見つけて取り除きます。

batchingは、各PRを順番にテストしていては追いつかない忙しいリポジトリでマージのスループットを高めます。

バッチサイズのトレードオフ

大きなバッチはCI実行1回でより多くをマージしますが、悪いPRを見つけるための二分探索に追加の実行が必要になるため、失敗のコストが高くなります。小さなバッチは実行回数が増えますが、失敗をより速く切り分けられます。

CIにおいて

GitHubのmerge queueはbatchingをサポートします。各PRを、実際にマージされる状態そのものに対してテストすることでターゲットブランチを常にグリーンに保ち、単独では通ってしまう意味的な競合を捕捉します。

関連ガイド