Mercurial > hg
view tests/test-subrepo-paths.t @ 44286:bbecb6d80aa7
manifest: rewrite filesnotin to not make superfluous manifest copies
This also skips using diff() when all we care about is the filenames. I'm
expecting the built in set logic to be plenty fast. For really large manifests
with a matcher in play this should copy substantially less data around.
Differential Revision: https://phab.mercurial-scm.org/D8082
author | Augie Fackler <augie@google.com> |
---|---|
date | Wed, 05 Feb 2020 16:58:50 -0500 |
parents | f97c83d94911 |
children |
line wrap: on
line source
$ hg init outer $ cd outer $ echo '[paths]' >> .hg/hgrc $ echo 'default = http://example.net/' >> .hg/hgrc hg debugsub with no remapping $ echo 'sub = libfoo' > .hgsub $ hg add .hgsub $ hg debugsub path sub source libfoo revision hg debugsub with remapping $ echo '[subpaths]' >> .hg/hgrc $ printf 'http://example.net/lib(.*) = C:\\libs\\\\1-lib\\\n' >> .hg/hgrc $ hg debugsub path sub source C:\libs\foo-lib\ revision test cumulative remapping, the $HGRCPATH file is loaded first $ echo '[subpaths]' >> $HGRCPATH $ echo 'libfoo = libbar' >> $HGRCPATH $ hg debugsub path sub source C:\libs\bar-lib\ revision test absolute source path -- testing with a URL is important since standard os.path.join wont treat that as an absolute path $ echo 'abs = http://example.net/abs' > .hgsub $ hg debugsub path abs source http://example.net/abs revision $ echo 'abs = /abs' > .hgsub $ hg debugsub path abs source /abs revision test bad subpaths pattern $ cat > .hg/hgrc <<EOF > [subpaths] > .* = \1 > EOF $ hg debugsub abort: bad subrepository pattern in $TESTTMP/outer/.hg/hgrc:2: invalid group reference* (glob) [255] $ cd ..