[CB-4149] Read version from VERSION when there is no .git/ (cherry picked from commit 6140e1683c3df47a698748636c405fed3d2273f4)
Project: http://git-wip-us.apache.org/repos/asf/cordova-js/repo Commit: http://git-wip-us.apache.org/repos/asf/cordova-js/commit/f87145b1 Tree: http://git-wip-us.apache.org/repos/asf/cordova-js/tree/f87145b1 Diff: http://git-wip-us.apache.org/repos/asf/cordova-js/diff/f87145b1 Branch: refs/heads/2.9.x Commit: f87145b146ef8e23d67547b798641b55a240415e Parents: 6e6ff82 Author: Andrew Grieve <[email protected]> Authored: Wed Sep 11 22:13:09 2013 -0400 Committer: Andrew Grieve <[email protected]> Committed: Tue Oct 22 11:41:44 2013 -0400 ---------------------------------------------------------------------- build/packager.js | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cordova-js/blob/f87145b1/build/packager.js ---------------------------------------------------------------------- diff --git a/build/packager.js b/build/packager.js index 7e2f19b..77a53a8 100644 --- a/build/packager.js +++ b/build/packager.js @@ -30,32 +30,36 @@ packager.computeCommitId = function(callback) { callback(cachedGitVersion); return; } - var gitPath = 'git'; - var args = 'describe --tags --long'; - childProcess.exec(gitPath + ' ' + args, function(err, stdout, stderr) { - var isWindows = process.platform.slice(0, 3) == 'win'; - if (err && isWindows) { - gitPath = '"' + path.join(process.env['ProgramFiles'], 'Git', 'bin', 'git.exe') + '"'; - childProcess.exec(gitPath + ' ' + args, function(err, stdout, stderr) { - if (err) { - error(err); - } else { - done(stdout); - } - }); - } else if (err) { - error(err); - } else { - done(stdout); - } - }); + if (fs.existsSync('.git')) { + var gitPath = 'git'; + var args = 'describe --tags --long'; + childProcess.exec(gitPath + ' ' + args, function(err, stdout, stderr) { + var isWindows = process.platform.slice(0, 3) == 'win'; + if (err && isWindows) { + gitPath = '"' + path.join(process.env['ProgramFiles'], 'Git', 'bin', 'git.exe') + '"'; + childProcess.exec(gitPath + ' ' + args, function(err, stdout, stderr) { + if (err) { + error(err); + } else { + done(stdout); + } + }); + } else if (err) { + error(err); + } else { + done(stdout); + } + }); + } else { + done(fs.readFileSync('VERSION', { encoding: 'utf8' })); + } function error(err) { throw new Error(err); } function done(stdout) { - var version = stdout.trim().replace(/^2.5.0-.*?-/, 'dev-'); + var version = stdout.trim(); cachedGitVersion = version; callback(version); };
