Курс Технический менеджер продуктов · автор Stanislav Belyaev
EN RU

Производительность Git

4 исходящих · 1 входящих · 5 всего связей

Карта Детали
МАСШТАБ КОМАНДЫ
Monorepo-Specific СПЕЦИФИЧНО ДЛЯ МОНОРЕПО

Производительность Git

Производительность git-операций — скорость clone, checkout, fetch и status — критична в крупных репозиториях. Когда git status занимает десятки секунд, а clone — минуты, страдает ежедневный рабочий процесс каждого разработчика. Оптимизация через partial clone, sparse checkout, FSMonitor и shallow clone помогает поддерживать приемлемую производительность.

Скорость операций clone, status и checkout на больших масштабах. Стандартный Git ломается на миллиардах строк.

КОНТЕКСТ МОНОРЕПО

Microsoft, Google и Facebook создали свои расширения и файловые системы (VFS for Git), чтобы решить эту проблему. Критично для сохранения потока разработчика.

Влияние масштаба
👤 Один / Пара (1–3)
0.1
👥 Команда (4–15)
0.3
🏢 Отдел (15–100)
0.7
🏛️ Организация (100+)
1

Операции Git деградируют с размером репозитория.

4
Влияет на
1
Зависит от

→ Влияет на

Переключение контекста

Медленные git status/checkout/clone создают микрозадержки, которые накапливаются и провоцируют переключение задач.

Google: 10-минутные зависания в 2005
Google monorepo history
Поднятие окружения

Клонирование многогигабайтного репозитория может занять часы. Первый день для новых сотрудников ужасен без sparse checkout.

Google создал Piper; MS создала Scalar/VFS для Git
Large repo performance case studies
Удовлетворённость разработчиков

Базовые операции, выполняющиеся медленно, глубоко фрустрируют разработчиков, привыкших к быстрому Git.

Facebook улучшил Mercurial специально для этого
Developer Experience research
Состояние потока

Многосекундные git-операции создают микропрерывания, которые могут нарушить концентрацию.

Нелинейное влияние на состояние потока
Flow state research

← Зависит от

Размер кодбейза

Git-операции деградируют с размером репозитория. Clone, checkout, log — все замедляется.

Google создал кастомную VCS на 2 млрд строк
Microsoft (Git Virtual File System), Meta Sapling
Карта метрик — Stanislav Belyaev · Анализ — Anthropic Claude Opus 4.6 · Все данные проверены человеком