git.js
function(repo, version, hash, meta, outDir) {

    var url, tempRepoDir, packageJSONData, self = this;

    if (meta.vPrefix) {
      version = 'v' + version;
    }

    // Automatically track and cleanup files at exit
    temp.track();

    url = createGitUrl(self.options.baseurl, repo, self.options.reposuffix, self.auth);

    return createTempDir().then(function(tempDir) {
      tempRepoDir = tempDir;
      return exportGitRepo(tempRepoDir, version, url, self.execOpt, self.options.shallowclone);
    }).then(function() {
      return readPackageJSON(tempRepoDir);
    }).then(function(data) {
      packageJSONData = data;
      return moveRepoToOutDir(tempRepoDir, outDir);
    }).then(function() {
      return packageJSONData;
    });
  }
function(repo, version, hash, meta, outDir) {

    var url, tempRepoDir, packageJSONData, self = this;

    if (meta.vPrefix) {
      version = 'v' + version;
    }

    // Automatically track and cleanup files at exit
    temp.track();

    url = createGitUrl(self.options.baseurl, repo, self.options.reposuffix, self.auth);

    return createTempDir().then(function(tempDir) {
      tempRepoDir = tempDir;
      return exportGitRepo(tempRepoDir, version, url, self.execOpt, self.options.shallowclone);
    }).then(function() {
      return readPackageJSON(tempRepoDir);
    }).then(function(data) {
      packageJSONData = data;
      return moveRepoToOutDir(tempRepoDir, outDir);
    }).then(function() {
      return packageJSONData;
    });
  }
function ( repo , version , hash , meta , outDir ) { var url , tempRepoDir , packageJSONData , self = this ; if ( meta . vPrefix ) { version = 'v' + version ; } // Automatically track and cleanup files at exit temp . track ( ) ; url = createGitUrl ( self . options . baseurl , repo , self . options . reposuffix , self . auth ) ; return createTempDir ( ) . then ( function ( tempDir ) { tempRepoDir = tempDir ; return exportGitRepo ( tempRepoDir , version , url , self . execOpt , self . options . shallowclone ) ; } ) . then ( function ( ) { return readPackageJSON ( tempRepoDir ) ; } ) . then ( function ( data ) { packageJSONData = data ; return moveRepoToOutDir ( tempRepoDir , outDir ) ; } ) . then ( function ( ) { return packageJSONData ; } ) ; }
always an exact version assumed that this is run after getVersions so the repo exists
always an exact version assumed that this is run after getVersions so the repo exists