2026年企業Mac CI:git worktreeとジョブ単位cloneの対照

高メモリーApple Siliconで多リポのPRを並行させると、Gitの取り方がチェックアウト遅延ディスクピークを左右する。git worktreeジョブ単位cloneかは隔離と再利用のトレードオフだ。 関連:リソースプールとキャッシュ再利用 と併せオブジェクト共有依存キャッシュ境界を整理する。

1. worktree対照clone:チェックアウト遅延と隔離

worktreeは同一.gitでツリーを増やしオブジェクト再利用に強い。サブモジュールLFS、厳格な掃除要件では終了処理が重い。ジョブ単位cloneはI/Oと帯域を使うがFS隔離が明確。git clone --referenceの折衷は参照先整合と権限をRunbook化する。

目安:短周期の同一ブランチならworktree、完全消去必須なら独立clone。

2. 多リポジトリ並行PRとディスクピーク

並行度が上がると同時チェックアウトDerivedDataが重なり、APFSでも空き枯渇が起きうる。各ジョブの_workNVMe別プレフィックスに固定してスパイクを分散する。DEVELOPER_DIRとシミュレータ併走は 関連:CLT/Xcode.appとNVMe占有FAQ と併読。

3. 依存キャッシュの複用:共有読み取りとジョブ専用書き込み

ノード共有キャッシュはロック競合権限汚染が出やすい。読み取り専用層+ジョブ書き込みサンドボックスの二層が安定。Gradle/Bazel併用は 関連:NVMe分区と遠隔キャッシュFAQ の表でGit領域とビルドキャッシュを分離する。

4. 実務FAQ(チェックリスト)

  • 隔離:サブモジュールやpost-checkoutが隣ジョブへ波及しないか。
  • 計測gitxcodebuildの所要をログで分離しているか。
  • 退避:ディスク90%超の自動停止と手動クリーン手順があるか。

専有Mac miniでプール境界を固定する

共有ランナーでは隣フェッチが計画を崩しやすい。専有Apple Siliconならworktree本数・clone深さ・キャッシュ置き場を表にできる。macOSはUnixとxcodebuildが一続きでGatekeeper/SIP/FileVaultの説明も容易。Mac mini M4は統合メモリ帯域と低待機電力で高並行に向く。

ホームで専有ノードを確認し、今すぐ購入してRunbookを本番近い負荷で試すのが合理的だ。