Mercurial > hg
annotate tests/test-empty-group.t @ 33331:4bae3c117b57
scmutil: make cleanupnodes delete divergent bookmarks
cleanupnodes takes care of bookmark movement, and bookmark movement could
cause bookmark divergent resolution as a side effect. This patch adds such
bookmark divergent resolution logic so future rebase migration will be
easier.
The revset is carefully written to be equivalent to what rebase does today.
Although I think it might make sense to remove divergent bookmarks more
aggressively, for example:
F book@1
|
E book@2
|
| D book
| |
| C
|/
B book@3
|
A
When rebase -s C -d E, "book@1" will be removed, "book@3" will be kept,
and the end result is:
D book
|
C
|
F
|
E book@2 (?)
|
B book@3
|
A
The question is should we keep book@2? The current logic keeps it. If we
choose not to (makes some sense to me), the "deleterevs" revset could be
simplified to "newnode % oldnode".
For now, I just make it compatible with the existing behavior. If we want to
make the "deleterevs" revset simpler, we can always do it in the future.
author | Jun Wu <quark@fb.com> |
---|---|
date | Mon, 26 Jun 2017 13:13:51 -0700 |
parents | 301725c3df9a |
children | eb586ed5d8ce |
rev | line source |
---|---|
4659
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
1 # A B |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
2 # |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
3 # 3 4 3 |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
4 # |\/| |\ |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
5 # |/\| | \ |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
6 # 1 2 1 2 |
7a7d4937272b
Kill trailing spaces
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3853
diff
changeset
|
7 # \ / \ / |
2339
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
8 # 0 0 |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
9 # |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
10 # if the result of the merge of 1 and 2 |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
11 # is the same in 3 and 4, no new manifest |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
12 # will be created and the manifest group |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
13 # will be empty during the pull |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
14 # |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
15 # (plus we test a failure where outgoing |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
16 # wrongly reported the number of csets) |
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
17 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
18 $ hg init a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
19 $ cd a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
20 $ touch init |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
21 $ hg ci -A -m 0 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
22 adding init |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
23 $ touch x y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
24 $ hg ci -A -m 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
25 adding x |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
26 adding y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
27 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
28 $ hg update 0 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
29 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
30 $ touch x y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
31 $ hg ci -A -m 2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
32 adding x |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
33 adding y |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
34 created new head |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
35 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
36 $ hg merge 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
37 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
38 (branch merge, don't forget to commit) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
39 $ hg ci -A -m m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
40 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
41 $ hg update -C 1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
42 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
43 $ hg merge 2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
44 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
45 (branch merge, don't forget to commit) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
46 $ hg ci -A -m m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
47 created new head |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
48 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
49 $ cd .. |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
50 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
51 $ hg clone -r 3 a b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
52 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
53 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
54 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
55 added 4 changesets with 3 changes to 3 files |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
56 updating to branch default |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
57 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
58 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
59 $ hg clone -r 4 a c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
60 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
61 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
62 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
63 added 4 changesets with 3 changes to 3 files |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
64 updating to branch default |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
65 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2339
11422943cf72
document and fix findincoming
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
diff
changeset
|
66 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
67 $ hg -R a outgoing b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
68 comparing with b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
69 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
70 changeset: 4:1ec3c74fc0e0 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
71 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
72 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
73 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
74 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
75 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
76 summary: m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
77 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
78 $ hg -R a outgoing c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
79 comparing with c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
80 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
81 changeset: 3:d15a0c284984 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
82 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
83 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
84 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
85 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
86 summary: m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
87 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
88 $ hg -R b outgoing c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
89 comparing with c |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
90 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
91 changeset: 3:d15a0c284984 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
92 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
93 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
94 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
95 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
96 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
97 summary: m1 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
98 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
99 $ hg -R c outgoing b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
100 comparing with b |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
101 searching for changes |
14162
301725c3df9a
localrepo: reuse parent manifest in commitctx if no files have changed
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
12847
diff
changeset
|
102 changeset: 3:1ec3c74fc0e0 |
12189
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
103 tag: tip |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
104 parent: 1:79f9e10cd04e |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
105 parent: 2:8e1bb01c1a24 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
106 user: test |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
107 date: Thu Jan 01 00:00:00 1970 +0000 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
108 summary: m2 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
109 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
110 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
111 $ hg -R b pull a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
112 pulling from a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
113 searching for changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
114 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
115 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
116 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
117 added 1 changesets with 0 changes to 0 files (+1 heads) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
118 (run 'hg heads' to see heads, 'hg merge' to merge) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
119 |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
120 $ hg -R c pull a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
121 pulling from a |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
122 searching for changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
123 adding changesets |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
124 adding manifests |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
125 adding file changes |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
126 added 1 changesets with 0 changes to 0 files (+1 heads) |
fb0c6373ec36
tests: unify test-empty-group
Adrian Buehlmann <adrian@cadifra.com>
parents:
12156
diff
changeset
|
127 (run 'hg heads' to see heads, 'hg merge' to merge) |