Merge pull request #2798 from ypid/fixed_get_git_hash

Get git commit hash even if the repo only points to a bare repo.
This commit is contained in:
John McLear 2015-10-22 16:13:58 +01:00
commit 3aff0001a1
1 changed files with 8 additions and 2 deletions

View File

@ -228,8 +228,14 @@ exports.getGitCommit = function() {
try
{
var rootPath = path.resolve(npm.dir, '..');
var ref = fs.readFileSync(rootPath + "/.git/HEAD", "utf-8");
var refPath = rootPath + "/.git/" + ref.substring(5, ref.indexOf("\n"));
if (fs.lstatSync(rootPath + '/.git').isFile()) {
rootPath = fs.readFileSync(rootPath + '/.git', "utf8");
rootPath = rootPath.split(' ').pop().trim();
} else {
rootPath += '/.git';
}
var ref = fs.readFileSync(rootPath + "/HEAD", "utf-8");
var refPath = rootPath + "/" + ref.substring(5, ref.indexOf("\n"));
version = fs.readFileSync(refPath, "utf-8");
version = version.substring(0, 7);
}