Not sure what this means. If a copy of the repo does not yet exist under this directory then it will first be cloned there, right?
Checking that the target is a directory might not be enough. In order for the git fetch / checkout to succeed it needs to be a valid git repo. Maybe check that there is a .git subdir?