Git checkout di una specifica sottocartella

Esiste un comando di git chiamato sparse checkout che permette di popolare la propria cartella di lavoro con una specifica cartella del repository. Utile perché non si è costretti a scaricare il contenuto di tutto il repository git.

Supponiamo di avere su github un repository al cui interno è contenuta la sottocartella database. Devo scaricare tutti i files SQL contenuti nella cartella. Come posso fare :

Ecco come:

Procedimento

mkdir databas
cd database/
# Inizializzo il repo vuoto
git init
# Aggiungo il remote origin
git remote add origin -f https://github.com/wedoit-io/decaduti.git
# ricorsivamente effettuo il checkout della cartella database
echo "database/*" >> .git/info/sparse-checkout
# rispetto alla cartella database effettuo il checkout per un massimo di 2 livelli
git pull --depth=2 origin master
Share Comments