Dans le cas de dépôt git agglomérant plusieurs travaux, pouvoir ne récupérer que le dossier qui nous intéresse peut être pratique. Pour git, cela s'appelle le sparse checkout.

git init
git remote add -f origin git@github.com:pvalois/ansible.git
git config --global user.name "Pascal Valois"
git config --global user.email "pvalois@email.com"
git config core.sparseCheckout true
git sparse-checkout set "roles/sync-date"
git sparse-checkout list
git pull origin main      

et seul le dossier roles/sync-date sera concerné par le pull et les updates.