Mercurial > hg
view tests/test-convert-hg-sink @ 10914:b7ca37b90762 stable
revlog: fix lazyparser.__iter__() to return all revisions (issue2137)
Previously, it only returned revisions that were in the revlog when it
was originally opened; revisions added since then were invisible.
This broke revlog._partialmatch() and therefore repo.lookup().
(Credit to Benoit Boissinot for simplifying my original test script
and for the actual fix.)
author | Greg Ward <greg-hg@gerg.ca> |
---|---|
date | Wed, 14 Apr 2010 15:06:40 -0400 |
parents | 68e0a55eee6e |
children |
line wrap: on
line source
#!/bin/sh cat >> $HGRCPATH <<EOF [extensions] convert= [convert] hg.saverev=False EOF hg init orig cd orig echo foo > foo echo bar > bar hg ci -qAm 'add foo and bar' hg rm foo hg ci -m 'remove foo' mkdir foo echo file > foo/file hg ci -qAm 'add foo/file' hg tag some-tag hg log cd .. hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' cd new hg out ../orig echo '% dirstate should be empty:' hg debugstate hg parents -q hg up -C hg copy bar baz echo '% put something in the dirstate:' hg debugstate > debugstate grep baz debugstate echo '% add a new revision in the original repo' cd ../orig echo baz > baz hg ci -qAm 'add baz' cd .. hg convert orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' cd new hg out ../orig echo '% dirstate should be the same (no output below):' hg debugstate > new-debugstate diff debugstate new-debugstate echo '% no copies' hg up -C hg debugrename baz cd .. echo '% test tag rewriting' cat > filemap <<EOF exclude foo EOF hg convert --filemap filemap orig new-filemap 2>&1 | grep -v 'subversion python bindings could not be loaded' cd new-filemap hg tags cd ..