Mercurial > hg
annotate tests/test-nested-repo.t @ 33377:5d63e5f40bea
revset: define successors revset
This revset returns all successors, including transit nodes and the source
nodes (to be consistent with existing revsets like "ancestors").
To filter out transit nodes, use `successors(X)-obsolete()`.
To filter out divergent case, use `successors(X)-divergent()-obsolete()`.
The revset could be useful to define rebase destination, like:
`max(successors(BASE)-divergent()-obsolete())`. The `max` is to deal with
splits.
There are other implementations where `successors` returns just one level of
successors, and `allsuccessors` returns everything. I think `successors`
returning all successors by default is more user friendly. We have seen
cases in production where people use 1-level `successors` while they really
want `allsuccessors`. So it seems better to just have one single revset
returning all successors by default to avoid user errors.
In the future we might want to add `depth` keyword argument to it and for
other revsets like `ancestors` etc. Or even build some flexible indexing
syntax [1] to satisfy people having the depth limit requirement.
[1]: https://www.mercurial-scm.org/pipermail/mercurial-devel/2017-July/101140.html
author | Jun Wu <quark@fb.com> |
---|---|
date | Mon, 10 Jul 2017 10:56:40 -0700 |
parents | 4cdec37f0018 |
children | 4441705b7111 |
rev | line source |
---|---|
12279 | 1 $ hg init a |
2 $ cd a | |
3 $ hg init b | |
4 $ echo x > b/x | |
5 | |
6 Should print nothing: | |
2061
5987c1eac2ce
support nested repositories.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
7 |
12279 | 8 $ hg add b |
9 $ hg st | |
10 | |
19124
4cdec37f0018
test-nested-repo.t: touch another file inside nested repo
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
11 $ echo y > b/y |
4cdec37f0018
test-nested-repo.t: touch another file inside nested repo
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
12 $ hg st |
4cdec37f0018
test-nested-repo.t: touch another file inside nested repo
Siddharth Agarwal <sid0@fb.com>
parents:
16913
diff
changeset
|
13 |
12279 | 14 Should fail: |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
2982
diff
changeset
|
15 |
12279 | 16 $ hg st b/x |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
13910
diff
changeset
|
17 abort: path 'b/x' is inside nested repo 'b' (glob) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
18 [255] |
12279 | 19 $ hg add b/x |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
13910
diff
changeset
|
20 abort: path 'b/x' is inside nested repo 'b' (glob) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
21 [255] |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
2982
diff
changeset
|
22 |
12279 | 23 Should fail: |
2061
5987c1eac2ce
support nested repositories.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
diff
changeset
|
24 |
12279 | 25 $ hg add b b/x |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
13910
diff
changeset
|
26 abort: path 'b/x' is inside nested repo 'b' (glob) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
27 [255] |
12279 | 28 $ hg st |
29 | |
30 Should arguably print nothing: | |
31 | |
32 $ hg st b | |
5200
c7e8fe11f34a
path_auditor: cache names of audited directories
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
5158
diff
changeset
|
33 |
12279 | 34 $ echo a > a |
35 $ hg ci -Ama a | |
36 | |
37 Should fail: | |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
2982
diff
changeset
|
38 |
12279 | 39 $ hg mv a b |
15447
9910f60a37ee
tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents:
13910
diff
changeset
|
40 abort: path 'b/a' is inside nested repo 'b' (glob) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
41 [255] |
12279 | 42 $ hg st |
5158
d316124ebbea
Make audit_path more stringent.
Bryan O'Sullivan <bos@serpentine.com>
parents:
2982
diff
changeset
|
43 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15447
diff
changeset
|
44 $ cd .. |