git init project
cd project
git remote add origin [remote_URL]
git config core.sparseCheckout true
echo "dir" >> .git/info/sparse-checkout
echo "maindir/subdir/" >> .git/info/sparse-checkout
git pull origin main
git config core.sparseCheckout true
echo "dir" >> .git/info/sparse-checkout
git pull origin main