It seems to me something like this. This does not work, because, regardless of something inside the project directories, I am not sure that you can conditionally start the clone.
force: ; proj%: force @echo [ -d $@ ] || git clone srv: $@ @cd $@ && git pull
If you want to list something like proj1/.git/config as a prereq starting point, you could split the cloning as a pre-order only prereq into those who have a clone for the project directory. Although you still need the power in the config prereq to make gravity happen.
Something like this is possible:
proj%: git clone srv: $@ proj%/.git/config: force | proj% git pull
source share