##// END OF EJS Templates
changegroup: fix treemanifests on merges...
changegroup: fix treemanifests on merges The current code for generating treemanifest revisions takes the list of files in the changeset and finds the directories from them. This does not work for merges, since a merge may pick file A from one side and file B from another and neither of them would appear in the changeset's "files" list, but the manifest would still change. Fix this by instead walking the root manifest log for all needed revisions, storing all needed file and subdirectory revisions, then recursively visiting the subdirectories. This also turns out to be faster: cloning a version of hg core converted to treemanifests went from ~28s to ~19s (timing somewhat unfair: before this patch, timed until crash; after this patch, timed until manifests complete). The new algorithm is used only on treemanifest repos. Although it works equally well on flat manifests, we leave the iteration over files in the changeset for flat manifests for now.

File last commit:

r19905:078ccd78 default
r28240:1ac8ce13 default
Show More
changelog.tmpl
5 lines | 67 B | application/x-cheetah | CheetahLexer
Alexander Plavin
hgweb: add changelog and search templates to raw style...
r19429 {header}
Alexander Plavin
hgweb: replace 'shortlog' with 'changelog' in raw changelog template
r19905 # HG changelog
Alexander Plavin
hgweb: add changelog and search templates to raw style...
r19429 # Node ID {node}
{entries%changelogentry}