I tried the following out of curiosity:
git checkout head
And I got this:
$ git checkout head
Note: checking out 'head'.
You are in 'detached HEAD' state.
Me@MyPC /c/repo ((9da1bd7...))
$
Whereas
git checkout HEAD
does nothing (as expected). So what exactly is the former command doing?
More info: Yes, I am on Windows. And it did not create a tag or a branch as far as I can tell:
Me@MyPC /c/repo ((9da1bd7...))
$ git log -n 1
commit 9da1bd740434923ae55ca1b50efb7c62eb6e0c35
Author: someone else
Date: Fri Dec 6 15:44:08 2013 +0100
Me@MyPC /c/repo ((9da1bd7...))
$ git tag -l
TestRelease
Me@MyPC /c/repo ((9da1bd7...))
$ git branch -l
* (detached from head)
master