title: Checking out Git tag leads to "detached HEAD state"
body: <p>I'm developing a deployment script for my git project and I just started using tags. I've added a new tag called <code>v2.0</code>:</p>
  
  <pre><code>git tag -a v2.0 -m "Launching version 2.0"
  </code></pre>
  
  <p>And I've pushed this tag to the remote repository</p>
  
  <pre><code>git push --tags
  </code></pre>
  
  <p>When I try to execute the deployment script and check out the <code>v2.0</code> tag I get this message:</p>
  
  <blockquote>
    <p><em>You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits
    you make in this state without impacting any branches by performing
    another checkout. If you want to create a new branch to retain commits
    you create, you may do so (now or later) by using -b with the checkout
    command again. Example:   git checkout -b new_branch_name HEAD is now
    at</em></p>
  </blockquote>
  
  <p>Is that normal? The repository is in limbo because if I do:</p>
  
  <pre><code>git branch
  </code></pre>
  
  <p>I get this output:</p>
  
  <pre><code>* (no branch)
    master
  </code></pre>
  
  <p>Sorry if this is obvious but I couldn't figure it out.</p>