Mercurial > evolve
annotate tests/test-evolve-split.t @ 6911:e14ae43aed88 mercurial-5.9
test-compat: merge mercurial-6.0 into mercurial-5.9
author | Anton Shestakov <av6@dwimlabs.net> |
---|---|
date | Fri, 25 Oct 2024 16:09:37 +0400 |
parents | d919851981d4 |
children |
rev | line source |
---|---|
5960
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
1 Check that evolve can handle split commits |
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
2 ------------------------------------------ |
d919851981d4
tests: evolve should be able to handle split parents by now
Anton Shestakov <av6@dwimlabs.net>
parents:
5816
diff
changeset
|
3 |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
4 $ cat >> $HGRCPATH <<EOF |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
5 > [ui] |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
6 > logtemplate = {rev}:{node|short}@{branch}({phase}) {desc|firstline}\n |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
7 > [extensions] |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
8 > EOF |
1806
9f42f819267b
evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
1481
diff
changeset
|
9 $ echo "evolve=$(echo $(dirname $TESTDIR))/hgext3rd/evolve/" >> $HGRCPATH |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
10 $ mkcommit() { |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
11 > echo "$1" > "$1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
12 > hg add "$1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
13 > hg ci -m "add $1" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
14 > } |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
15 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
16 $ hg init split |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
17 $ cd split |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
18 $ mkcommit aa |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
19 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
20 Create a split commit |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
21 $ printf "oo" > oo; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
22 $ printf "pp" > pp; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
23 $ hg add oo pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
24 $ hg commit -m "oo+pp" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
25 $ mkcommit uu |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
26 $ hg up 0 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
27 0 files updated, 0 files merged, 3 files removed, 0 files unresolved |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
28 $ printf "oo" > oo; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
29 $ hg add oo |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
30 $ hg commit -m "_oo" |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
31 created new head |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
32 $ printf "pp" > pp; |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
33 $ hg add pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
34 $ hg commit -m "_pp" |
4763
184c64c81528
prune: spell --successor flag without any unnecessary shortcuts
Anton Shestakov <av6@dwimlabs.net>
parents:
4577
diff
changeset
|
35 $ hg prune --successor "desc(_oo) + desc(_pp)" -r "desc('oo+pp')" --split |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
36 1 changesets pruned |
3013
945a0989e41b
packaging: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3000
diff
changeset
|
37 1 new orphan changesets |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
38 $ hg log -G |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
39 @ 4:d0dcf24cddd3@default(draft) _pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
40 | |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
41 o 3:a7fdfda64c08@default(draft) _oo |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
42 | |
3417
d3a17c67f85c
branching: merge stable back into default
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
3411
diff
changeset
|
43 | * 2:f52200b086ca@default(draft) add uu |
1428
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
44 | | |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
45 | x 1:d55647aaa0c6@default(draft) oo+pp |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
46 |/ |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
47 o 0:58663bb03074@default(draft) add aa |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
48 |
20a3b0b27bfe
evolve: raise MultipleSuccessorsError when computing dependency for split commits
Laurent Charignon <lcharignon@fb.com>
parents:
diff
changeset
|
49 $ hg evolve --rev "0::" |
1481
3c0aebe73482
evolve: handle split commit for instability
Laurent Charignon <lcharignon@fb.com>
parents:
1471
diff
changeset
|
50 move:[2] add uu |
3c0aebe73482
evolve: handle split commit for instability
Laurent Charignon <lcharignon@fb.com>
parents:
1471
diff
changeset
|
51 atop:[4] _pp |
5206
dc3571a37b56
evolve: support ancestor of orphan split with unrelated changeset in between
Manuel Jacob <me@manueljacob.de>
parents:
4763
diff
changeset
|
52 |
5207
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
53 $ cd .. |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
54 $ hg init split-merged |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
55 $ cd split-merged |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
56 $ mkcommit aa |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
57 |
5208
e0885e2abf59
tests: merge two tests about split changesets
Manuel Jacob <me@manueljacob.de>
parents:
5207
diff
changeset
|
58 Split the changeset such that the successors don't have a single root and there's an unrelated changeset in between |
5207
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
59 $ printf "oo" > oo; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
60 $ printf "pp" > pp; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
61 $ printf "qq" > qq; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
62 $ hg add oo pp qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
63 $ hg commit -m "oo+pp+qq" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
64 $ mkcommit uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
65 $ hg up 0 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
66 0 files updated, 0 files merged, 4 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
67 $ printf "oo" > oo; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
68 $ hg add oo |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
69 $ hg commit -m "_oo" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
70 created new head |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
71 $ hg up 0 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
72 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
73 $ printf "pp" > pp; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
74 $ hg add pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
75 $ hg commit -m "_pp" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
76 created new head |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
77 $ hg merge 3 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
78 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
79 (branch merge, don't forget to commit) |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
80 $ hg ci -m 'merge oo and pp' |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
81 $ printf "qq" > qq; |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
82 $ hg add qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
83 $ hg commit -m "_qq" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
84 $ hg prune --successor "desc(_oo) + desc(_pp) + desc(_qq)" -r "desc('oo+pp+qq')" --split |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
85 1 changesets pruned |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
86 1 new orphan changesets |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
87 $ hg log -G |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
88 @ 6:ea5b1e180c04@default(draft) _qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
89 | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
90 o 5:bf7c32161b4b@default(draft) merge oo and pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
91 |\ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
92 | o 4:ece0aaa22eb7@default(draft) _pp |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
93 | | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
94 o | 3:a7fdfda64c08@default(draft) _oo |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
95 |/ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
96 | * 2:cc56c47d84b3@default(draft) add uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
97 | | |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
98 | x 1:575a7380a87d@default(draft) oo+pp+qq |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
99 |/ |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
100 o 0:58663bb03074@default(draft) add aa |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
101 |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
102 $ hg evolve --rev "0::" |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
103 move:[2] add uu |
a5876853ba15
evolve: support successors of ancestor of orphan with multiple roots
Manuel Jacob <me@manueljacob.de>
parents:
5206
diff
changeset
|
104 atop:[6] _qq |