Merge branch 'git_branch' into 'master'
Ensure GIT_BRANCH non-empty when not on a branch If HEAD is detached e.g. during `git bisect`, GIT_BRANCH ends up empty, which causes an error at runtime. This change grabs the description from `git branch`, which is either the branch name or something like `(HEAD detached at <hash>)` on recent versions or `(no branch)` in older versions. Works with BSD and GNU sed, and git >= 1.0.0b (at least) although detached HEAD only introduced in 1.5.0. See merge request !47