title: Why git doesn't clone all branches by default but clones all objects (commits, blobs, trees) that take much more space?
body: <p>By default when I clone git repo: <code>git clone url</code>
  git clones only the current branch (eg. the one pointed to by HEAD on the remote). But when I look into the <code>.git/objects</code> I see all objects in git database are there.</p>
  <p>Why is that? Branches are just 41 bytes long (SHA1 + LF), while git objects in <code>.git/objects</code> directory are usually much larger than that? I first thought it was because of optimizing the download size, but now it doesn't make sens because that branch sizes are negligible (even if there are hundreds of them) for mid or larger projects.</p>