##// END OF EJS Templates
narrow: use diffmatcher to send only new filelogs in non-ellipses widening...
Pulkit Goyal -
r39701:c73c7653 default
parent child Browse files
Show More
@@ -21,6 +21,7 b' from mercurial import ('
21 21 error,
22 22 exchange,
23 23 extensions,
24 match as matchmod,
24 25 narrowspec,
25 26 repair,
26 27 repository,
@@ -72,6 +73,9 b' def getbundlechangegrouppart_widen(bundl'
72 73 newmatch = narrowspec.match(repo.root, include=include, exclude=exclude)
73 74 oldinclude = sorted(filter(bool, kwargs.get(r'oldincludepats', [])))
74 75 oldexclude = sorted(filter(bool, kwargs.get(r'oldexcludepats', [])))
76 oldmatch = narrowspec.match(repo.root, include=oldinclude,
77 exclude=oldexclude)
78 diffmatch = matchmod.differencematcher(newmatch, oldmatch)
75 79 common = set(common or [nullid])
76 80
77 81 if (oldinclude != include or oldexclude != exclude):
@@ -84,7 +88,7 b' def getbundlechangegrouppart_widen(bundl'
84 88 # XXX: we should only send the filelogs (and treemanifest). user
85 89 # already has the changelog and manifest
86 90 packer = changegroup.getbundler(version, repo,
87 filematcher=newmatch,
91 filematcher=diffmatch,
88 92 fullnodes=commonnodes)
89 93 cgdata = packer.generate(set([nullid]), list(commonnodes), False,
90 94 source)
@@ -95,7 +95,7 b' added upstream revisions.'
95 95 adding changesets
96 96 adding manifests
97 97 adding file changes
98 added 0 changesets with 1 changes to 2 files
98 added 0 changesets with 1 changes to 1 files
99 99 3 local changesets published
100 100 $ hg tracked
101 101 I path:inside
@@ -154,7 +154,7 b' widen the narrow spec to include the wid'
154 154 adding changesets
155 155 adding manifests
156 156 adding file changes
157 added 0 changesets with 1 changes to 3 files
157 added 0 changesets with 1 changes to 1 files
158 158 5 local changesets published
159 159 $ hg tracked
160 160 I path:inside
@@ -259,7 +259,7 b' make narrow clone with every third node.'
259 259 adding changesets
260 260 adding manifests
261 261 adding file changes
262 added 0 changesets with 1 changes to 5 files
262 added 0 changesets with 1 changes to 1 files
263 263 11 local changesets published
264 264 $ hg tracked
265 265 I path:d0
@@ -351,7 +351,7 b' Widening that fails can be recovered fro'
351 351 adding changesets
352 352 adding manifests
353 353 adding file changes
354 added 0 changesets with 1 changes to 2 files
354 added 0 changesets with 1 changes to 1 files
355 355 11 local changesets published
356 356 $ hg log -T "{if(ellipsis, '...')}{rev}: {desc}\n"
357 357 11: local
General Comments 0
You need to be logged in to leave comments. Login now