diff --git a/internal/build/env.go b/internal/build/env.go
index 87b4c57ac503b0b1c9b29d8825a14af5f92d44e9..3f63239ca1134ff8f986a7bb99d98bf11333466c 100644
--- a/internal/build/env.go
+++ b/internal/build/env.go
@@ -84,7 +84,9 @@ func LocalEnv() Environment {
 		env.Commit = RunGit("rev-parse", "HEAD")
 	}
 	if env.Branch == "" {
-		env.Branch = RunGit("symbolic-ref", "-q", "--short", "HEAD")
+		if b := RunGit("rev-parse", "--abbrev-ref", "HEAD"); b != "HEAD" {
+			env.Branch = b
+		}
 	}
 	// Note that we don't get the current git tag. It would slow down
 	// builds and isn't used by anything.