##// END OF EJS Templates
scmutil: proxy revrange() through repo to break import cycles...
scmutil: proxy revrange() through repo to break import cycles This was one of the hardest import cycles as scmutil is widely used and revset functions are likely to depend on a variety of modules. New repo.anyrevs() does not expand user aliases by default to copy the behavior of the existing repo.revs(). I don't want to add new function to localrepository, but this function is quite similar to repo.revs() so it won't increase the complexity of the localrepository class so much.

File last commit:

r24458:7d87f672 default
r31025:6cf28575 default
Show More
test-revset-dirstate-parents.t
66 lines | 889 B | text/troff | Tads3Lexer
/ tests / test-revset-dirstate-parents.t
$ HGENCODING=utf-8
$ export HGENCODING
$ try() {
> hg debugrevspec --debug $@
> }
$ log() {
> hg log --template '{rev}\n' -r "$1"
> }
$ hg init repo
$ cd repo
$ try 'p1()'
(func
('symbol', 'p1')
None)
* set:
<baseset []>
$ try 'p2()'
(func
('symbol', 'p2')
None)
* set:
<baseset []>
$ try 'parents()'
(func
('symbol', 'parents')
None)
* set:
<baseset+ []>
null revision
$ log 'p1()'
$ log 'p2()'
$ log 'parents()'
working dir with a single parent
$ echo a > a
$ hg ci -Aqm0
$ log 'p1()'
0
$ log 'tag() and p1()'
$ log 'p2()'
$ log 'parents()'
0
$ log 'tag() and parents()'
merge in progress
$ echo b > b
$ hg ci -Aqm1
$ hg up -q 0
$ echo c > c
$ hg ci -Aqm2
$ hg merge -q
$ log 'p1()'
2
$ log 'p2()'
1
$ log 'tag() and p2()'
$ log 'parents()'
1
2
$ cd ..