title: Git: Fork / Remote / Clone Concepts
body: <p>I am trying to understand / visualize the elements that come with forking a repo. My starting reference is this <a href="http://help.github.com/fork-a-repo/" rel="nofollow">help page</a>.</p>
  
  <p><strong>1st Question</strong>:</p>
  
  <p>When I forked a repo e.g. <em>Spoon-Knife</em> on GitHub (i.e. clicked the Fork button on their site), does it mean the <em>Spoon-Knife</em> is copied to my GitHub account? Did a real copy actually happen or is it just a concept?</p>
  
  <p><strong>2nd Question</strong>:</p>
  
  <p>The next step in the help page is to do a <em>clone</em>:</p>
  
  <blockquote>
    <p>$ git clone git@github.com:username/Spoon-Knife.git</p>
  </blockquote>
  
  <p>This command made a copy of the source in my local machine. Did it clone from the forked / copied repo in my GitHub account (please see my first question)? Or, from the original <em>Spoon-Knife</em> repo?</p>
  
  <p><strong>3rd Question</strong>:</p>
  
  <p>Step about configuring remotes:</p>
  
  <blockquote>
    <p>When a repo is cloned, it has a default remote called <code>origin</code> that points to your fork on GitHub, not the original repo it was forked from. To keep track of the original repo, you need to add another remote named <code>upstream</code>.</p>
  </blockquote>
  
  <p>So, is <code>origin</code> some kind of "proxy" between our local copy and the repo copy on my GitHub account? And, how about <code>upstream</code>?</p>
  
  <p>Thanks beforehand for your help.</p>