n1ro°
RU

Компьютеры · Инструкция

Как оставить в Git только одну папку через sparse-checkout

Полезно для монорепозитория, когда локально нужен только один сервис или каталог, а остальную историю и refs удалять нел

Редакция N1RO · Проверено

Короткий ответ

Выполните `git sparse-checkout init --cone`, затем `git sparse-checkout set path/to/app`. История не удаляется: меняется только набор путей рабочего дерева.

Что делать

  1. 1: Из корня репозитория выполните `git sparse-checkout init --cone`.
  2. 2: Задайте нужный каталог: `git sparse-checkout set path/to/app`.
  3. 3: Проверьте набор: `git sparse-checkout list`.
  4. 4: Чтобы вернуть все каталоги, выполните `git sparse-checkout disable`.

Важно

Перед сменой sparse-набора сохраните незакоммиченные изменения: Git старается не терять локальные правки.

Проверьте после выполнения

  • До команды: Из корня репозитория выполните `git sparse-checkout init --cone`.
  • Контроль результата: Чтобы вернуть все каталоги, выполните `git sparse-checkout disable`.
  • Не пропустите ограничение: Перед сменой sparse-набора сохраните незакоммиченные изменения: Git старается не терять локальные правки.

Что учитывать

Перед сменой sparse-набора сохраните незакоммиченные изменения: Git старается не терять локальные правки.

Источники и проверка

Фактическая часть сверена по первичным источникам (в т.ч. git-sparse-checkout Documentation). Пример и формулировки — редакция N1RO на 2026-09-17.