title: Why "git push helloworld +master:master" instead of just "git push helloworld"?
body: <p>I tried to push my (first ever!) git repo like this initially:</p>
  
  <pre><code>$ git push helloworld
  </code></pre>
  
  <p>But I got this back:</p>
  
  <pre><code>To git-smichaels@free5.projectlocker.com:helloworld.git
   ! [rejected]        HEAD -&gt; master (non-fast forward) error:
   failed to push some refs to 'git-smichaels@free5.projectlocker.com:helloworld
  git'
  </code></pre>
  
  <p>So I found <a href="https://stackoverflow.com/questions/253055/how-do-i-push-amended-commit-to-the-remote-git-repo/253726#253726">another StackOverflow question</a> about "amended commits" and tried a suggestion from there without really knowing whether it would help me:</p>
  
  <pre><code>KaiserSosa@SMICHAELS /c/test/helloworld (master)
  $ git push helloworld +master:master
  </code></pre>
  
  <p>It worked!</p>
  
  <p>But I don't know why it fixed my problem :(</p>
  
  <p>Could someone explain why this works but "<code>git push helloworld</code>" doesn't?</p>