Hi,
Brief description:
When two tags are pointing to the same commit, e.g. tagA and tagB, if I do `git
checkout tagA` then `git checkout tagB`, and then `git status`, it shows `HEAD
detached at tagA`
Expected behaviour:
I'm expecting it to show `HEAD detached at tagB`, though I understand this
makes no difference for the repo code, but still a bit confusing for me.
Found workaround:
If I do an extra step `git checkout master`, followed by `git checkout tagB`,
and then `git status`, it shows `HEAD detached at tagB` as expected. ("master"
can be any branch name)
Affected version:
This happens with the latest git version 2.14.3.
Detailed background:
We have a system consists of many git repos, and are using tags of global
version numbers to ensure the same version of repos are deployed in the whole
system. Sometimes when we have a new minor version of the system, there is no
new commits for some repos. Still we need a new version tag for those repos to
match the system version number, so we put a new version tag pointing to the
same commit as the previous version tag. This is how we ran into the above
situation and I was suspecting that our deploying script didn't run properly
when I see `HEAD detached at {old-version}` in some locations of a
{new-version} system.
I'm not sure if this is an expected behaviour or not because I didn't found any
useful information after some Goolgling, except the following discussion.
Related discussion:
I found this discussion to be related to the same problem:
https://stackoverflow.com/questions/30631000/git-checkout-tag-issues-tag-is-unchanged/30631434#30631434
Regards,
Myles Fong