title: How to make local clone without pulling subrepos again?
body: <p>I often work with Mercurial by keeping a local store of my upstream clones, and then just cloning again locally for my actual working environment:</p>
  
  <pre><code>$ cd /clones
  $ hg clone ssh://external-repo.example.com/some/repo/path/foo
  $ cd ~/Development
  $ hg clone /clones/foo
  </code></pre>
  
  <p>This is particularly useful for me because I often want to make new clones on airplanes, etc., where I have no internet access.  However, this doesn't work when the original clone contains subrepos - the presence of the <code>.hgsubstate</code> file means that <code>hg</code> will always go out to the internet instead of grabbing the local cloned revision (even if they are the <em>same</em>).  Is there any way to make a local clone copy the files without going out to the internet?</p>
  
  <p><a href="https://stackoverflow.com/questions/3436549/mercurial-hg-clone-but-ignoring-all-subrepos">This question</a> has an answer which would probably work, but seems very unfortunate for long-term management (deleting the <code>.hgsubstate</code> file in the clone in <code>/clones/</code>, and then making local clones from that).</p>