##// END OF EJS Templates
context: follow all branches in blockdescendants()...
context: follow all branches in blockdescendants() In the initial implementation of blockdescendants (and thus followlines(..., descend=True) revset), only the first branch encountered in descending direction was followed. Update the algorithm so that all children of a revision ('x' in code) are considered. Accordingly, we need to prevent a child revision to be yielded multiple times when it gets visited through different path, so we skip 'i' when this occurs. Finally, since we now consider all parents of a possible child touching a given line range, we take care of yielding the child if it has a diff in specified line range with at least one of its parent (same logic as blockancestors()).

File last commit:

r15270:6cb6064f default
r31955:4c2c30bc default
Show More
rebase-revset.hg
0 lines | 1.8 KiB | application/octet-stream | TextLexer
/ tests / bundles / rebase-revset.hg
Binary file (application/octet-stream)