title: Collapsing a git repository's history
body: <p>We have a git project which has quite a big history.</p>
  
  <p>Specifically, early in the project there were quite a lot of binary resource files in the project, these have now been removed as they're effectively external resources.</p>
  
  <p>However, the size of our repository is >200MB (the total checkout is currently ~20MB) due to having these files previously committed.</p>
  
  <p>What we'd like to do is "collapse" the history so that the repository appears to have been created from a later revision than it was. For example</p>
  
  <pre><code>1-----2-----3-----4-----+---+---+
                     \       /
                      +-----+---+---+
  </code></pre>
  
  <ol>
  <li>Repository created</li>
  <li>Large set of binary files added</li>
  <li>Large set of binary files removed</li>
  <li>New intended 'start' of repository</li>
  </ol>
  
  <p>So effectively we want to lose the project history before a certain point. At this point there is only one branch, so there's no complication with trying to deal with multiple start points etc. However we don't want to lose all of the history and start a new repository with the current version.</p>
  
  <p>Is this possible, or are we doomed to have a bloated repository forever?</p>