code: private synchronized Git copyRepository() throws IOException, GitAPIException {
  		deleteBaseDirIfExists();
  		getBasedir().mkdirs();
  		Assert.state(getBasedir().exists(), "Could not create basedir: " + getBasedir());
  		if (getUri().startsWith(FILE_URI_PREFIX)) {
  			return copyFromLocalRepository();
  		}
  		else {
  			return cloneToBasedir();
  		}
  	}
docs: request).