This is not something one would normally do, but this is here for future reference for me. First of all ensure puppet, facter and hiera source codes are all checked out from git and have the same top level directory. Then you take the environment.bat file that is shipped with the puppet installer (in the bin directory), copy it somewhere that you have in the PATH and you edit the first two lines to change the PL_BASEDIR to your top level directory for all of those previous items. SET PL_BASEDIR=C:\code\puppetlabs ......