title: "git branch --contains" -- difference between "* (no branch)" and no output
body: <p>I'm using git 1.7.1 accessing checkout of a bitbucket.org repository.</p>
  
  <p>I have two tags: <code>TAG1</code> and <code>TAG2</code>. I run:</p>
  
  <pre><code>git branch --contains `git rev-list -1 TAG1`
  
  git branch --contains `git rev-list -1 TAG1`
  git branch --contains `git rev-list -1 TAG2`
  </code></pre>
  
  <p>Note that in each case <code>git rev-list</code> returns a valid hash. There's no problem with that part of the command. I may as well be asking about 
  two distinct commits.</p>
  
  <p>The first command has the output:</p>
  
  <pre><code>  * (no branch)
  </code></pre>
  
  <p>The second command has no output at all. My first question is, what
  is the difference between the output <code>* (no branch)</code> and no output?</p>
  
  <p>My second question is, how would one create a tag that gives no output in response to the above commands?</p>