Mercurial > hg > mercurial-crew-with-dirclash
view tests/test-merge-local @ 4193:9e3121017fb2
Optimize return value of util._matcher for common command line case
This will trigger every time somebody runs something like "hg diff"
or "hg status" without any arguments.
The important part here is returning util.always as the match function,
which is a much simpler (and faster) function than the usual return
value, and allows other code to just skip the filtering if it knows
all files will match.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sat, 10 Mar 2007 23:01:00 -0300 |
parents | ad6f34c83c3d |
children | 46280c004f22 |
line wrap: on
line source
#!/bin/sh hg init echo "# revision 0" echo "unchanged" > unchanged echo "remove me" > remove echo "copy me" > copy echo "move me" > move for i in 1 2 3 4 5 6 7 8 9; do echo "merge ok $i" >> zzz1_merge_ok done echo "merge bad" > zzz2_merge_bad hg ci -Am "revision 0" -d "1000000 0" echo "# revision 1" hg rm remove hg mv move moved hg cp copy copied echo "added" > added hg add added echo "new first line" > zzz1_merge_ok hg cat zzz1_merge_ok >> zzz1_merge_ok echo "new last line" >> zzz2_merge_bad hg ci -m "revision 1" -d "1000000 0" echo "# local changes to revision 0" hg co 0 echo "new last line" >> zzz1_merge_ok echo "another last line" >> zzz2_merge_bad hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge with bad merge tool" HGMERGE=false hg co hg co 0 hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge with conflicts" HGMERGE=merge hg co hg co 0 hg diff --nodates | grep "^[+-][^<>]" hg st echo "# local merge without conflicts" hg revert zzz2_merge_bad HGMERGE=merge hg co hg diff --nodates | grep "^[+-][^<>]" hg st