Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-clone-pull-corruption @ 5374:e710874247d1
convert: allow the converter_source to say "skip this revision"
If getchanges returns a string, it's assumed to be the id of an
already converted revision. We map the current revision to the same
revision this converted revision was mapped to.
To allow skipping a root revision, getchanges can return the special
string 'hg-convert-skipped-revision' (a.k.a. common.SKIPREV), which
hopefully won't clash with any real id.
The converter_source is responsible for rewriting the parents of the
commit objects to make sure the revision graph makes sense.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Thu, 04 Oct 2007 23:21:37 -0300 |
parents | 81ca1a9bd061 |
children |
line wrap: on
line source
#!/bin/sh # # Corrupt an hg repo with a pull started during an aborted commit # # Create two repos, so that one of them can pull from the other one. hg init source cd source touch foo hg add foo hg ci -m 'add foo' hg clone . ../corrupted echo >> foo hg ci -m 'change foo' # Add a hook to wait 5 seconds and then abort the commit cd ../corrupted echo '[hooks]' >> .hg/hgrc echo 'pretxncommit = sleep 5; exit 1' >> .hg/hgrc # start a commit... touch bar hg add bar hg ci -m 'add bar' & # ... and start a pull while the commit is still running sleep 1 hg pull ../source 2>/dev/null # see what happened wait hg verify