Mercurial > hg > mercurial-source
view tests/test-convert-hg-source @ 7231:8e7130a10f3b
convert: ignore hg source errors with hg.ignoreerrors (issue 1357)
This flag makes missing revlog errors to be ignored which allow broken
repositories to be fixed by converting them from and to Mercurial.
author | Patrick Mezard <pmezard@gmail.com> |
---|---|
date | Tue, 21 Oct 2008 21:24:47 +0200 |
parents | 180a3eee4b75 |
children | 314fc589b313 |
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 bar' -d '0 0' echo >> foo hg ci -m 'change foo' -d '1 0' hg up -qC 0 hg copy --after --force foo bar hg copy foo baz hg ci -m 'make bar and baz copies of foo' -d '2 0' hg merge hg ci -m 'merge local copy' -d '3 0' hg up -C 1 hg merge 2 hg ci -m 'merge remote copy' -d '4 0' chmod +x baz hg ci -m 'mark baz executable' -d '5 0' cd .. hg convert --datesort orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' cd new hg out ../orig cd .. echo % init broken repository hg init broken cd broken echo a >> a echo b >> b hg ci -qAm init echo a >> a echo b >> b hg copy b c hg ci -qAm changeall hg up -qC 0 echo bc >> b hg ci -m changebagain HGMERGE=internal:local hg -q merge hg ci -m merge hg mv b d hg ci -m moveb echo % break it rm .hg/store/data/b.* cd .. hg --config convert.hg.ignoreerrors=True convert broken fixed hg -R fixed verify echo '% manifest -r 0' hg -R fixed manifest -r 0 echo '% manifest -r tip' hg -R fixed manifest -r tip true