Thanks for sharing this, Rick! Readers might be interested to know that the name changes for the functions (GITFN*->GIT, such as in GIT_CLONE) are applied in SAS 9.4M7 (and of course carried into SAS 9.4M8), so most SAS users reading this should be able to use that convention.

Also, if you don't care about the temporary path name where you clone a repo, you can have SAS generate a unique name and skip the "does it exist" step.

options dlcreatedir; /* give permission to create the RepoPath directory if it doesn't exist */
%let gitURL = https://github.com/sascommunities/the-do-loop-blog/; /* Git repo to copy */
%let RepoPath = %sysfunc(getoption(WORK))/&sysfunc(uuidgen()); /* unique location to put copy */