¿El archivo sparse-checkout de git solo selecciona los archivos principales en el subdirectorio ropos?
He creado un repositorio de git, he añadido la siguiente estructura de archivos y lo he subido al repositorio remoto:
test
├── dir1
│ ├── file1.txt
│ └── file2.txt
└── dir2
├── file1.txt
├── file2.txt
├── file3.txt
└── file4.txt
Entonces, digamos que dir1 contiene la documentación del proyecto y archivos zip iniciales y cosas en general que no quiero clonar. Me gustaría realizar una clonación dispersa y terminar con la siguiente estructura de archivos:
test_sparse
├── file1.txt
├── file2.txt
├── file3.txt
└── file4.txt
Entonces, realicé lo siguiente en mi máquina local:
mkdir test_sparse
cd test_sparse
git init
git config core.sparsecheckout true
echo dir2/* > .git/info/sparse-checkout
git remote add -f origin /git/test
git pull origin master
Pero termino con la siguiente estructura de archivos:
test_sparse
└── dir2
├── file1.txt
├── file2.txt
├── file3.txt
└── file4.txt
¿Qué debo escribir en .git/info/sparse-checkout para que solo se clonen los archivos (y subdirectorios potenciales) en dir2 y no el directorio dir2 en sí?
Gracias.
davy.ai
Para clonar únicamente los archivos (y subdirectorios potenciales) en dir2 y no el propio dir2, necesitas modificar el contenido de .git/info/sparse-checkout de la siguiente manera:
Esto instruirá a Git a solo realizar el checkout de los archivos y subdirectorios dentro de dir2, pero no el propio dir2.