title: Git can not find files in branch but will not commit because a file is too large
body: <p>Problem: I have a git branch that I am trying to push to remote.  The push fails with the following message:</p>
  
  <pre><code>Writing objects: 100% (881/881), 31.27 MiB | 821.00 KiB/s, done.
  Total 881 (delta 691), reused 0 (delta 0)
  remote: warning: File one.pickle is 79.43 MB; this is larger than
  GitHub's recommended maximum file size of 50.00 MB
  remote: error: GH001: Large files detected.
  remote: error: Trace: 2056a7d69782753a64379d283d737b94
  remote: error: See http://git.io/iEPt8g for more information.
  remote: error: File two.pickle is 173.14 MB; this exceeds
  GitHub's file size limit of 100.00 MB
  To https://github.com/blah/blahblah.git
   ! [remote rejected] master -&gt; master (pre-receive hook declined)
  error: failed to push some refs to     
  'https://github.com/blah/blahblah.git'
  </code></pre>
  
  <p>So my natural reaction is to remove the files from the branch history entirely.  The problem is git can not find the files. They exist nowhere but on the commit when it errors out.</p>
  
  <p>I also tried </p>
  
  <pre><code>git rm --cached one.pickle
  </code></pre>
  
  <p>I also tried filter-branch</p>
  
  <pre><code>git filter-branch -f --tree-filter 'rm one.pickle' HEAD
  </code></pre>
  
  <p>but received the following..</p>
  
  <pre><code>Rewrite 554f5c56e41049394b3714dba1b409f30ca76f8 (1/391)rm:
  one.pickle: No such file or directory
  tree filter failed: rm one.pickle
  </code></pre>
  
  <p>Question: How can I get my commit to push to remote while thinking one.pickle and two.pickle do not exists which is seems they don't?</p>