title: Why does git protocol produce more objects than git-http-backend?
body: <p>I'm using <strong>Git 1.7.1</strong> configured with <code>git-http-backend</code> (<a href="http://progit.org/2010/03/04/smart-http.html" rel="noreferrer">Smart HTTP</a>).  I wanted to see how much faster this was compared to the <strong>git://</strong> protocol, since now they are supposed to be on par.</p>
  
  <p>Turns out <strong>git://</strong> protocol is compressing more objects (<em>33,229</em> vs <em>21,193</em>) for the <strong>exact</strong> same repo (even verified client side), and thus creating a packfile that's about 30MB bigger for my project.  </p>
  
  <p>Is there some reason why <strong>git://</strong> protocol needs more objects?</p>
  
  <h1>git:// Output</h1>
  
  <pre><code>remote: Counting objects: 44510, done.
  remote: Compressing objects: 100% (33229/33229), done.
  Receiving objects: 100% (44510/44510), 124.07 MiB | 2.84 MiB/s, done.
  remote: Total 44510 (delta 22755), reused 15866 (delta 7516)
  Resolving deltas: 100% (22755/22755), done.
  </code></pre>
  
  <h1>http:// Output</h1>
  
  <pre><code>remote: Counting objects: 24299, done.
  remote: Compressing objects: 100% (21931/21931), done.
  remote: Total 24299 (delta 7517), reused 0 (delta 0)
  Receiving objects: 100% (24299/24299), 95.95 MiB | 2.41 MiB/s, done.
  Resolving deltas: 100% (7517/7517), done.
  </code></pre>