util._matcher: speed up regexp matching.
In 4babaa52badf, Benoit made a change that substantially slows matching
when a big .hgignore file is in play, because it calls into the regexp
matching engine potentially hundreds of times per file to be matched.
I've partly rolled back his change, so that we only call into the matcher
once per file, but preserved the ability to report a meaningful error
message if there's a syntax error in the regexp.
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
pushing to ../a
searching for changes
abort: push creates new remote branches!
(did you forget to merge? use push -f to force)
pulling from ../a
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (+1 heads)
(run 'hg heads' to see heads, 'hg merge' to merge)
pushing to ../a
searching for changes
abort: push creates new remote branches!
(did you forget to merge? use push -f to force)
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
pushing to ../a
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 1 changes to 1 files
adding foo
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
merging foo
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
pushing to ../c
searching for changes
abort: push creates new remote branches!
(did you forget to merge? use push -f to force)
0
pushing to ../c
searching for changes
no changes found
0
pushing to ../c
searching for changes
abort: push creates new remote branches!
(did you forget to merge? use push -f to force)
0
pushing to ../c
searching for changes
abort: push creates new remote branches!
(did you forget to merge? use push -f to force)
0
pushing to ../c
searching for changes
adding changesets
adding manifests
adding file changes
added 2 changesets with 2 changes to 1 files (+2 heads)
0
pushing to ../c
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files (-1 heads)
0
pushing to ../e
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
0
pushing to ../e
searching for changes
adding changesets
adding manifests
adding file changes
added 1 changesets with 1 changes to 1 files
0