fix rev-parse when not on a local branch

This commit is contained in:
Doug MacEachern 2010-04-04 10:25:58 -07:00
parent 21a09f23d4
commit 6a0cd93cf5
1 changed files with 12 additions and 2 deletions

View File

@ -177,8 +177,18 @@ public class ArchNameTask extends Task {
String head = readLine(git + "/HEAD");
if (head != null) {
String ref = head.substring(5).trim(); //'ref: '
return readLine(git + "/" + ref).substring(0, 7);
String sha1;
final String refp = "ref: ";
if (head.startsWith(refp)) {
//branch
String ref = head.substring(refp.length()).trim();
sha1 = readLine(git + "/" + ref);
}
else {
//git checkout -f origin/branch-name (no branch)
sha1 = head;
}
return sha1.substring(0, 7);
}
}
return null;