title: User/Repository Hierarchy in GIT
body: <p>Yes, I know I know hehe. A Distributed Version Control System doesn't has a central repository, anyone can get the versions of any repository because this is not a centralized VCS. However in real life in an office, often the bosses want to be the masters of everything, so I've come here to see if anyone has a good approach in my case.</p>
  
  <p>At my office we have started to use GIT,and we have something like this:</p>
  
  <pre><code>&lt;SERVER&gt;
  ----&gt;../apache/htdcos/All_Proyects [Bare repository]
  --------&gt;/Proyect_A [Repository]~~~ Developer 1 [Git Repo], Developer 2 [Git Repo]
  --------&gt;/Proyect_B [Repository]~~~ Developer 3 [Git Repo], Developer 4 [Git Repo]
  --------&gt;/Proyect_123 [Repository]~~~ Developer 5 [Git Repo], Developer 6 [Git Repo]
  </code></pre>
  
  <p>The idea it's that every project has it's own GIT repository and in the All_Projects folder it could have a Bare Repository then "main one" so all projects push to it;that bare repository would be something like the master of masters repository (Is this really a good approach in the first place???)</p>
  
  <p>With this approach I have some doubts...</p>
  
  <p>How can I have a hierarchy of users/repositories??
  So, for example, Developer 5 can't push/pull/commit from/to Proyect_A but he can do it to his own Proyect_123??</p>
  
  <p>Can I have a hierarchy system something like these?: Developer pushes to Boss repository, Boss pushes to project repository and Server automatically (cron maybe) pulls from every project repositories to the bare master of masters repository. (Where developer can't push directly to bare repository).</p>
  
  <p>How can I do something like that?
  THANKS!</p>