Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-locate @ 4492:b79cdb7f0597
patch.diff: avoid calling workingctx().manifest()
Right now, to generate the manifest of the working dir, we have to
perform a full walk of the working dir, which will be very slow,
especially if we're interested in only a small part of it.
Since we use the manifest only to find out the mode of files for git
patches, manually build an execf function to do it.
This should fix issue567.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sun, 03 Jun 2007 14:38:52 -0300 |
parents | a5cde03cd019 |
children |
line wrap: on
line source
#!/bin/sh hglocate() { echo "hg locate $@" hg locate "$@" ret=$? echo return $ret } mkdir t cd t hg init echo 0 > a echo 0 > b echo 0 > t.h mkdir t echo 0 > t/x echo 0 > t/b echo 0 > t/e.h mkdir dir.h echo 0 > dir.h/foo hg ci -A -m m -d "1000000 0" touch nottracked hglocate a && echo locate succeeded || echo locate failed hglocate NONEXISTENT && echo locate succeeded || echo locate failed hglocate hg rm a hg ci -m m -d "1000000 0" hglocate a hglocate NONEXISTENT hglocate relpath:NONEXISTENT hglocate hglocate -r 0 a hglocate -r 0 NONEXISTENT hglocate -r 0 relpath:NONEXISTENT hglocate -r 0 echo % -I/-X with relative path should work cd t hglocate hglocate -I ../t # test issue294 cd .. rm -r t hglocate 't/**' mkdir otherdir cd otherdir hglocate b hglocate '*.h' hglocate path:t/x hglocate 're:.*\.h$' hglocate -r 0 b hglocate -r 0 '*.h' hglocate -r 0 path:t/x hglocate -r 0 're:.*\.h$'