title: Linking bare repo to actual repo in Git and post-receive hooks
body: <p>So far from reading the git tutorails I have understood that for sharing my project files residing in my ubuntu linux server I need to create a bare repository and link it to the actual repository, so that when users clone the actual repo they get the actual repo having the actual work files.</p>
  
  <p>And when they push their changes to the server the post-receive hook now updates the actual repo containing work files.</p>
  
  <p>This is all I could understand and beyound that I have a lot of confusion for which I have the foll questions:</p>
  
  <pre><code>1) How do I create my bare repo.
  2) How do I link it to the actual repo consisting the actual work files.
  3) And what is this post-receive hook? Where does it reside? And what configurations do I need to do for the same.
  </code></pre>