title: Git submodule head 'reference is not a tree' error
body: <p>I have a project with a submodule that is pointing to an invalid commit: the submodule commit remained local and when I try to fetch it from another repo I get:</p>
  
  <pre><code>$ git submodule update
  fatal: reference is not a tree: 2d7cfbd09fc96c04c4c41148d44ed7778add6b43
  Unable to checkout '2d7cfbd09fc96c04c4c41148d44ed7778add6b43' in submodule path 'mysubmodule'
  </code></pre>
  
  <p>I know what the submodule HEAD should be, is there any way I can change this locally, without pushing from the repo that <em>does</em> have commit <code>2d7cfbd09fc96c04c4c41148d44ed7778add6b43</code> ?</p>
  
  <p>I'm not sure if I'm being clear... <a href="http://www.mail-archive.com/bug-coreutils@gnu.org/msg16418.html" rel="noreferrer">here's a similar situation</a> I found.</p>