Comments
Patch
@@ -1773,6 +1773,16 @@
Test hexadecimal revision
$ log 'id(2)'
+ $ log 'id(5)'
+ 2
+ $ hg --config experimental.revisions.prefixhexnode=yes log --template '{rev}\n' -r 'id(x5)'
+ 2
+ $ hg --config experimental.revisions.prefixhexnode=yes log --template '{rev}\n' -r 'x5'
+ 2
+ $ hg --config experimental.revisions.prefixhexnode=yes log --template '{rev}\n' -r 'id(x)'
+ $ hg --config experimental.revisions.prefixhexnode=yes log --template '{rev}\n' -r 'x'
+ abort: 00changelog.i@: ambiguous identifier!
+ [255]
$ log 'id(23268)'
4
$ log 'id(2785f51eece)'
@@ -437,6 +437,9 @@
return '%d:%s' % (rev, hexfunc(node))
def resolvehexnodeidprefix(repo, prefix):
+ if (prefix.startswith('x') and
+ repo.ui.configbool('experimental', 'revisions.prefixhexnode')):
+ prefix = prefix[1:]
try:
# Uses unfiltered repo because it's faster when prefix is ambiguous/
# This matches the shortesthexnodeidprefix() function below.
@@ -587,6 +587,9 @@
coreconfigitem('experimental', 'removeemptydirs',
default=True,
)
+coreconfigitem('experimental', 'revisions.prefixhexnode',
+ default=False,
+)
coreconfigitem('experimental', 'revlogv2',
default=None,
)