Esta característica te permitirá clonar solo aquellas carpetas que te puedan interesar del repositorio.
Vamos a verlo con un sencillo ejemplo. Supongamos que del siguiente repositorio en github https://github.com/fjmontesinos/jhipster.git tan solo deseas clonar la carpeta prueba-sparse-checkout que como puedes comprobar tan solo tiene un fichero de texto sin código alguno a modo de prueba.
Tan solo debes seguir los siguientes sencillos pasos:
- Crea un carpeta y accede a ella.
$ mkdir miproyecto
$ cd miproyecto
- Inicializa un repositorio git en la carpeta.
$ git init
- Activa sparse-checkout en el repositorio.
$ git config core.sparsecheckout true
- Indícale a git la carpeta o carpetas que desas clonar de forma exclusiva, para el caso del ejemplo: prueba-sparse-checkout
$ echo prueba-sparse-checkout >> .git/info/sparse-checkout
- Añade el repositorio remoto a git
$ git remote -f origin https://github.com/fjmontesinos/jhipster.git
- Haz un pull del proyecto y ejecuta un ls, comprobarás que tan solo se ha clonado la carpeta indicada
$ git pull origin master
$ ls -la
total 16
drwxrwxr-x 4 javiermontesinos javiermontesinos 4096 abr 10 05:49 .
drwxrwxr-x 8 javiermontesinos javiermontesinos 4096 abr 10 05:59 ..
drwxrwxr-x 8 javiermontesinos javiermontesinos 4096 abr 10 05:49 .git
drwxrwxr-x 2 javiermontesinos javiermontesinos 4096 abr 10 05:49 prueba-sparce-checkout