git sparse-checkout

Espacios de trabajo y proyectos grandes

Extrae solo algunas carpetas de un repositorio grande


El comando 'git sparse-checkout' limita qué carpetas están presentes en el disco. Los archivos fuera de esas carpetas siguen en cada commit y en el repositorio, solo que no se extraen — útil en repositorios enormes donde solo trabajas en una parte. En el modo cone (por defecto), los archivos de primer nivel siempre están presentes. git status indica qué porcentaje de archivos hay en el disco.

Sinopsis

git sparse-checkout (set | add) <folder>...
git sparse-checkout list
git sparse-checkout disable
[ ] opcional| o<arg> valor a sustituir... repetible--flag opción

Opciones

Haz clic en una opción para desplegarla

Principiante (4)

Elige las carpetas que mantener en el disco (reemplaza la lista actual).

RecomendadoElegir las carpetas en las que trabajas

Ejemplo

git sparse-checkout set src

Añade carpetas a las que ya mantienes.

RecomendadoAmpliar la extracción sin empezar de cero

Ejemplo

git sparse-checkout add docs

Imprime las carpetas que se mantienen.

RecomendadoComprobar qué hay en disco

Ejemplo

git sparse-checkout list

Desactiva el sparse checkout y restaura todos los archivos.

RecomendadoVolver a una extracción normal

Ejemplo

git sparse-checkout disable

Elegir la opción adecuada

Trabajar con un repositorio enorme

Menos en disco frente a menos descargado

ComandoAhorra
git sparse-checkoutEspacio en disco y tiempo de extracción
git clone --filter=blob:noneTamaño de descarga (clon parcial)
git clone --depth 1Tamaño del historial (clon superficial)

Ejemplos

Mantener una carpeta

git sparse-checkout set src

Solo src/ y los archivos de primer nivel.


Añadir una carpeta

git sparse-checkout add docs

docs/ vuelve también.


Desactivarlo

git sparse-checkout disable

Todos los archivos otra vez.

Ejemplos de flujos de trabajo

1
git clone --filter=blob:none --sparse <url>

Clonar ligero, sparse desde el principio

2
git sparse-checkout set web

Mantener solo tu carpeta

Solución de problemas

Falta una carpeta

Causa: Está fuera del sparse checkout

git sparse-checkout add <folder>

Consejos y trampas

Buenas prácticas

  • ✓Usa el modo cone (por defecto) — es mucho más rápido que los patrones.

Errores comunes

  • ✗Creer que los archivos ocultos se borran del proyecto — siguen confirmándose y subiéndose con normalidad.

Preguntas frecuentes

A:

No los ves, así que normalmente no los tocas; los commits los mantienen sin cambios.