My Ant build.xml script starts with
GIT_BRANCH = ${env.GIT_BRANCH}
PWD = ${env.PWD
RESOLVED
After seeing the comment by abayer in Hudson bug 6856, I took the following steps:
The build log shows
[workspace] $ git.exe checkout -b ChangeTester d6caef27759495c5714923c1ddf19551a70d6083
Instead of
[workspace] $ git.exe checkout -f d6caef27759495c5714923c1ddf19551a70d6083
Which means that I am not in a 'detached head' state and can therefore do commits, create tags, and push.
I can use 'git rev-parse HEAD' to get the commit hash and find that in the output of 'git show-ref' to find the real name of the branch if I need it.
I'm now able to push successful build tags to my git repo.