annotate tests/test-evolve-order.t @ 6130:cd07d6bd4e2a

cmdrewrite: a new `hg fixup` command This new command can be used to amend specific revisions with working copy changes. Implementation-wise what it basically does is: 1) commit working directory changes 2) relocate the new commit onto the target commit 3) fold them into one. After the run, the working directory parent will be the obsoleted changeset created in step 1 and descendants of the target will become orphans.
author Sushil khanchi <sushilkhanchi97@gmail.com>
date Wed, 03 Nov 2021 22:59:17 +0530
parents a1dad44fe3da
children 53d63b608230
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
1 evolve --rev reordering
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
2 -----------------------
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
3
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
4 $ cat >> $HGRCPATH <<EOF
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
5 > [ui]
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
6 > logtemplate = {rev}:{node|short}@{branch}({phase}) {desc|firstline}\n
5079
1f92a6aa40d6 evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 4577
diff changeset
7 > [experimental]
1f92a6aa40d6 evolve: add pre-check logic for content-divergence in rewriteutil.precheck()
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 4577
diff changeset
8 > evolution.allowdivergence = True
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
9 > [extensions]
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
10 > EOF
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1641
diff changeset
11 $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
12 $ mkcommit() {
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
13 > echo "$1" > "$1"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
14 > hg add "$1"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
15 > hg ci -m "add $1"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
16 > }
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
17
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
18 $ mkstack() {
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
19 > # Creates a stack of commit based on $1 with messages from $2, $3 ..
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
20 > hg update "$1" -C
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
21 > shift
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
22 > mkcommits $*
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
23 > }
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
24
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
25 $ mkcommits() {
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
26 > for i in $@; do mkcommit $i ; done
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
27 > }
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
28
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
29 Initial setup
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
30 $ hg init testrevorder
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
31 $ cd testrevorder
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
32 $ mkcommits p _a _b _c
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
33 $ hg phase --public 0
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
34 $ hg up 'desc(_a)'
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
35 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
36 $ echo "aaa" > _a
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
37 $ hg amend
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
38 2 new orphan changesets
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
39 $ hg log -G
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
40 @ 4:12d519679175@default(draft) add _a
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
41 |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
42 | * 3:4d156641b718@default(draft) add _c
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
43 | |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
44 | * 2:4d7242ebb004@default(draft) add _b
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
45 | |
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
46 | x 1:2d73fcd7f07d@default(draft) add _a
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
47 |/
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
48 o 0:f92638be10c7@default(public) add p
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
49
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
50
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
51 evolve --rev reorders the rev to solve instability, trivial case 2 revs wrong order
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
52 $ hg evolve --rev 'desc(_c) + desc(_b)'
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
53 move:[2] add _b
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
54 atop:[4] add _a
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
55 move:[3] add _c
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
56
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
57 evolve --rev reorders the rev to solve instability. Harder case, obsolescence
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
58 accross three stacks in growing rev numbers.
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
59 $ hg up "desc(_c)"
4577
bcd52ce0916d evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 4576
diff changeset
60 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
61 $ mkcommit _d
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
62 $ hg up "desc(_a)"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
63 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
64 $ hg amend -m "aprime"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
65 3 new orphan changesets
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
66 $ hg evolve --rev "desc(_b)"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
67 move:[5] add _b
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
68 atop:[8] aprime
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
69 $ hg up "desc(_b) - obsolete()"
4577
bcd52ce0916d evolve: don't update after instability resolution by default (BC)
Anton Shestakov <av6@dwimlabs.net>
parents: 4576
diff changeset
70 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
71 $ hg amend -m "bprime"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
72 $ hg up "desc(aprime)"
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
73 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
74 $ hg amend -m "asecond"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
75 1 new orphan changesets
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
76 $ hg log -G
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
77 @ 11:9a584314f3f3@default(draft) asecond
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
78 |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
79 | * 10:a59c79776f7c@default(draft) bprime
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
80 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
81 | x 8:81a687b96d4d@default(draft) aprime
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
82 |/
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
83 | * 7:464731bc0ed0@default(draft) add _d
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
84 | |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
85 | * 6:52b8f9b04f83@default(draft) add _c
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
86 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
87 | x 5:59476c3836ef@default(draft) add _b
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
88 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
89 | x 4:12d519679175@default(draft) add _a
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
90 |/
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
91 o 0:f92638be10c7@default(public) add p
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
92
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4455
diff changeset
93 $ hg evolve --rev "orphan()" --update
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
94 move:[10] bprime
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
95 atop:[11] asecond
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
96 move:[6] add _c
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
97 move:[7] add _d
1510
b86eea66ed02 evolve: be more complete about copying extra from old revisions
Augie Fackler <raf@durin42.com>
parents: 1412
diff changeset
98 working directory is now at 739f18ac1d03
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
99 $ hg log -G
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
100 @ 14:739f18ac1d03@default(draft) add _d
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
101 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
102 o 13:e5960578d158@default(draft) add _c
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
103 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
104 o 12:4ad33fa88946@default(draft) bprime
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
105 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
106 o 11:9a584314f3f3@default(draft) asecond
1369
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
107 |
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
108 o 0:f92638be10c7@default(public) add p
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
109
4ed67cce8c23 evolve: properly evolve stacked unstable with --rev
Laurent Charignon <lcharignon@fb.com>
parents:
diff changeset
110
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
111 Evolve --rev more complex case: two sets of stacks one with prune an no successor, the other one
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
112 partially solvable
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
113
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
114 First set of stack:
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
115 $ mkstack "desc(_d)" c1_ c2_ c3_ c4_ >/dev/null
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
116 $ mkstack "desc(_d)" c1prime c2prime >/dev/null
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
117 $ mkstack "desc(_d)" c1second >/dev/null
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
118 $ hg prune "desc(c1_)" -s "desc(c1prime)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
119 1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
120 3 new orphan changesets
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
121 $ hg prune "desc(c2_)" -s "desc(c2prime)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
122 1 changesets pruned
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
123 $ hg prune "desc(c1prime)" -s "desc(c1second)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
124 1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
125 1 new orphan changesets
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
126 $ hg log -G -r "desc(_d)::"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
127 @ 21:dcf786e878fd@default(draft) add c1second
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
128 |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
129 | * 20:507d52d715f6@default(draft) add c2prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
130 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
131 | x 19:c995cb124ddc@default(draft) add c1prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
132 |/
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
133 | * 18:d096a2437fd0@default(draft) add c4_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
134 | |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
135 | * 17:cde95c6cba7a@default(draft) add c3_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
136 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
137 | x 16:e0d9f7a099fe@default(draft) add c2_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
138 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
139 | x 15:43b7c338b1f8@default(draft) add c1_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
140 |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
141 o 14:739f18ac1d03@default(draft) add _d
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
142 |
1641
27445da063b7 tests: adapt output to the new graphlog style
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1510
diff changeset
143 ~
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
144
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
145 Second set of stack with no successor for b2_:
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
146 $ mkstack "desc(_d)" b1_ b2_ b3_ b4_ >/dev/null
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
147 $ mkstack "desc(_d)" b1prime b3prime >/dev/null
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
148 $ hg prune "desc(b1_)" -s "desc(b1prime)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
149 1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
150 3 new orphan changesets
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
151 $ hg prune "desc(b3_)" -s "desc(b3prime)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
152 1 changesets pruned
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
153 $ hg prune "desc(b2_)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
154 1 changesets pruned
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
155
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
156 $ hg log -G -r "desc(_d)::"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
157 @ 27:b253ff5b65d1@default(draft) add b3prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
158 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
159 o 26:4acf61f11dfb@default(draft) add b1prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
160 |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
161 | * 25:594e1fbbd61f@default(draft) add b4_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
162 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
163 | x 24:be27500cfc76@default(draft) add b3_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
164 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
165 | x 23:b54f77dc5831@default(draft) add b2_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
166 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
167 | x 22:0e1eba27e9aa@default(draft) add b1_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
168 |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
169 | o 21:dcf786e878fd@default(draft) add c1second
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
170 |/
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
171 | * 20:507d52d715f6@default(draft) add c2prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
172 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
173 | x 19:c995cb124ddc@default(draft) add c1prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
174 |/
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
175 | * 18:d096a2437fd0@default(draft) add c4_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
176 | |
3417
d3a17c67f85c branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3411
diff changeset
177 | * 17:cde95c6cba7a@default(draft) add c3_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
178 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
179 | x 16:e0d9f7a099fe@default(draft) add c2_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
180 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
181 | x 15:43b7c338b1f8@default(draft) add c1_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
182 |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
183 o 14:739f18ac1d03@default(draft) add _d
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
184 |
1641
27445da063b7 tests: adapt output to the new graphlog style
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1510
diff changeset
185 ~
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
186
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
187 Solve the full second stack and only part of the first one
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
188 $ echo "(desc(_d)::) - desc(c3_)"
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
189 (desc(_d)::) - desc(c3_)
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
190 $ hg evolve --rev "(desc(_d)::) - desc(c3_)"
5477
d60490a28318 evolve: improve warning msg when skipping orphan resolution
Sushil khanchi <sushilkhanchi97@gmail.com>
parents: 5079
diff changeset
191 skipping d096a2437fd0, consider including orphan ancestors
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
192 move:[20] add c2prime
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
193 atop:[21] add c1second
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
194 move:[25] add b4_
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
195 atop:[27] add b3prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
196
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
197 Cleanup
4576
96ce1030d2fb tests: add --update to hg evolve to reduce test changes for the next patch
Anton Shestakov <av6@dwimlabs.net>
parents: 4455
diff changeset
198 $ hg evolve --rev "(desc(_d)::)" --update
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
199 move:[17] add c3_
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
200 atop:[28] add c2prime
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
201 move:[18] add c4_
1510
b86eea66ed02 evolve: be more complete about copying extra from old revisions
Augie Fackler <raf@durin42.com>
parents: 1412
diff changeset
202 working directory is now at 35e7b797ace5
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
203 $ hg log -G -r "desc(_d)::"
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
204 @ 31:35e7b797ace5@default(draft) add c4_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
205 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
206 o 30:0b9488394e89@default(draft) add c3_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
207 |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
208 | o 29:ea93190a9cd1@default(draft) add b4_
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
209 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
210 o | 28:881b9c092e53@default(draft) add c2prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
211 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
212 | o 27:b253ff5b65d1@default(draft) add b3prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
213 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
214 | o 26:4acf61f11dfb@default(draft) add b1prime
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
215 | |
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
216 o | 21:dcf786e878fd@default(draft) add c1second
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
217 |/
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
218 o 14:739f18ac1d03@default(draft) add _d
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
219 |
1641
27445da063b7 tests: adapt output to the new graphlog style
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1510
diff changeset
220 ~
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
221
4455
b58e45aa9be2 test: use 'split' instead of 'splitted' in the tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4122
diff changeset
222 Test multiple revision with some un-evolvable because parent is split
b58e45aa9be2 test: use 'split' instead of 'splitted' in the tests
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 4122
diff changeset
223 ---------------------------------------------------------------------
1370
0799c5831a3d evolve: move test for evolve --rev ordering in a separate file
Laurent Charignon <lcharignon@fb.com>
parents: 1369
diff changeset
224
1408
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
225 $ hg up 'desc(c2prime)'
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
226 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
227 $ mkcommit c3part1
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
228 created new head
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
229 $ hg prev
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
230 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
231 [28] add c2prime
1408
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
232 $ mkcommit c3part2
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
233 created new head
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
234 $ hg prune -s 'desc(c3part1)' 'desc(c3_)'
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
235 1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
236 1 new orphan changesets
1408
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
237 $ hg prune -s 'desc(c3part2)' 'desc(c3_)'
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
238 1 changesets pruned
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
239 2 new content-divergent changesets
1408
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
240 $ hg up 'desc(b3prime)'
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
241 2 files updated, 0 files merged, 3 files removed, 0 files unresolved
b3afdc0815d0 evolve: skip unstable changesets with multiple successorssets
Laurent Charignon <lcharignon@fb.com>
parents: 1370
diff changeset
242 $ hg amend -m 'b3second'
3013
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
243 1 new orphan changesets
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
244 $ hg evolve --rev "orphan()"
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
245 move:[29] add b4_
945a0989e41b packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3000
diff changeset
246 atop:[34] b3second
1510
b86eea66ed02 evolve: be more complete about copying extra from old revisions
Augie Fackler <raf@durin42.com>
parents: 1412
diff changeset
247 skipping 0b9488394e89: divergent rewriting. can't choose destination