Skip to content

Guides

How to run CI on a very large repository

Checkout, indexing and status reporting all degrade as the repository grows.

6 min read

Checkout, indexing and status reporting all degrade as the repository grows.

Why it happens

Git operations scale with object count and working-tree size, and CI repeats them on every job.

How to fix it

  1. Partial clone with blob:none and sparse checkout for the paths a job needs
  2. Cache the git object store between runs where the provider supports it
  3. Split the pipeline so only affected projects build
  4. Use local NVMe runners — git on network storage is painful at scale

Your next build could be twice as fast, at half the price

Start free. Migrating away is the same one line, and we publish that diff too.