#!/bin/sh cat >> $HGRCPATH < 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 '% check shamap LF and CRLF handling' cat > rewrite.py <> foo hg ci -qm 'change foo again' hg up -qC 2 echo foo >> foo hg ci -qm 'change foo again again' cd .. hg convert --datesort orig new 2>&1 | grep -v 'subversion python bindings could not be loaded' 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