Mercurial > public > mercurial-scm > hg
diff hgext/shelve.py @ 20064:99c4b8f79324 stable
shelve: unshelve using an unfiltered repository
when evolve is enabled and a hidden obsolete changeset exists
in the repository, the strip during unshelve will fail due to
filtered revs. we use an unfiltered repository like to
repair.strip to strip the proper nodes.
author | David Soria Parra <davidsp@fb.com> |
---|---|
date | Thu, 07 Nov 2013 20:36:26 -0800 |
parents | 065e6f1c9259 |
children | b3483223f734 |
line wrap: on
line diff
--- a/hgext/shelve.py Thu Nov 07 01:56:40 2013 +0100 +++ b/hgext/shelve.py Thu Nov 07 20:36:26 2013 -0800 @@ -610,7 +610,7 @@ # but it doesn't update the inmemory structures, so addchangegroup # hooks still fire and try to operate on the missing commits. # Clean up manually to prevent this. - repo.changelog.strip(oldtiprev, tr) + repo.unfiltered().changelog.strip(oldtiprev, tr) unshelvecleanup(ui, repo, basename, opts) finally: