##// END OF EJS Templates
revset: lookup descendents for negative arguments to ancestor operator...
revset: lookup descendents for negative arguments to ancestor operator Negative offsets to the `~` operator now search for descendents. The search is aborted when a node has more than one child as we do not have a definition for 'nth child'. Optionally we can introduce such a notion and take the nth child ordered by rev number. The current revset language does provides a short operator for ancestor lookup but not for descendents. This gives user a simple revset to move to the previous changeset, e.g. `hg up '.~1'` but not to the 'next' changeset. With this change userse can now use `.~-1` as a shortcut to move to the next changeset. This fits better into allowing users to specify revisions via revsets and avoiding the need for special `hg next` and `hg prev` operations. The alternative to negative offsets is adding a new operator. We do not have many operators in ascii left that do not require bash escaping (',', '_', and '/' come to mind). If we decide that we should add a more convenient short operator such as ('/', e.g. './1') we can later add it and allow ascendents lookup via negative numbers.

File last commit:

r29219:3c9066ed default
r32699:f75d0aa5 default
Show More
helpers-testrepo.sh
19 lines | 678 B | application/x-sh | BashLexer
# The test-repo is a live hg repository which may have evolution
# markers created, e.g. when a ~/.hgrc enabled evolution.
#
# Tests are run using a custom HGRCPATH, which do not
# enable evolution markers by default.
#
# If test-repo includes evolution markers, and we do not
# enable evolution markers, hg will occasionally complain
# when it notices them, which disrupts tests resulting in
# sporadic failures.
#
# Since we aren't performing any write operations on the
# test-repo, there's no harm in telling hg that we support
# evolution markers, which is what the following lines
# for the hgrc file do:
cat >> $HGRCPATH << EOF
[experimental]
evolution=createmarkers
EOF