Mercurial > hg
annotate tests/test-rebase-obsolete3.t @ 50400:95acba2c29f6
encoding: avoid quadratic time complexity when json-encoding non-UTF8 strings
Apparently the code uses "+=" with a bytes object, which is linear-time, so the
whole encoding is quadratic-time. This patch makes us use a bytearray object,
instead, which has a(n amortized-)constant-time append operation.
The encoding is still not particularly fast, but at least a 10MB file
takes tens of seconds, not many hours to encode.
author | Arseniy Alekseyev <aalekseyev@janestreet.com> |
---|---|
date | Mon, 06 Mar 2023 11:27:57 +0000 |
parents | 535de0e34a79 |
children |
rev | line source |
---|---|
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
1 ========================== |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
2 Test rebase with obsolete |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
3 ========================== |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
4 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
5 Enable obsolete |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
6 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
7 $ cat >> $HGRCPATH << EOF |
45765
ed84a4d48910
config: add a new [command-templates] section for templates defined by hg
Martin von Zweigbergk <martinvonz@google.com>
parents:
45458
diff
changeset
|
8 > [command-templates] |
ed84a4d48910
config: add a new [command-templates] section for templates defined by hg
Martin von Zweigbergk <martinvonz@google.com>
parents:
45458
diff
changeset
|
9 > log= {rev}:{node|short} {desc|firstline}{if(obsolete,' ({obsfate})')} |
22955
fab9dda0f2a3
obsolete: update tests to use obsolete options
Durham Goode <durham@fb.com>
parents:
22260
diff
changeset
|
10 > [experimental] |
34866
1644623ab096
config: use 'experimental.evolution.create-markers'
Boris Feld <boris.feld@octobus.net>
parents:
34865
diff
changeset
|
11 > evolution.createmarkers=True |
34867
7f183c643eb6
config: use 'experimental.evolution.allowunstable'
Boris Feld <boris.feld@octobus.net>
parents:
34866
diff
changeset
|
12 > evolution.allowunstable=True |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
13 > [phases] |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
14 > publish=False |
27011
53c668dc6b16
rebase: fix a typo in test-rebase-obsolete
Laurent Charignon <lcharignon@fb.com>
parents:
26902
diff
changeset
|
15 > [extensions] |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
16 > rebase= |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
17 > drawdag=$TESTDIR/drawdag.py |
39093
cc37009e95ca
rebase: add --stop option to stop rebase at any point (issue5206)
Sushil khanchi <sushilkhanchi97@gmail.com>
parents:
38239
diff
changeset
|
18 > strip= |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
19 > EOF |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
20 |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
21 Divergence cases due to obsolete changesets |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
22 ------------------------------------------- |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
23 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
24 We should ignore branches with unstable changesets when they are based on an |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
25 obsolete changeset which successor is in rebase set. |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
26 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
27 $ hg init divergence |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
28 $ cd divergence |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
29 $ cat >> .hg/hgrc << EOF |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
30 > [extensions] |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
31 > strip = |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
32 > [alias] |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
33 > strip = strip --no-backup --quiet |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
34 > [templates] |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
35 > instabilities = '{rev}:{node|short} {desc|firstline}{if(instabilities," ({instabilities})")}\n' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
36 > EOF |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
37 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
38 $ hg debugdrawdag <<EOF |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
39 > e f |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
40 > | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
41 > d' d # replace: d -> d' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
42 > \ / |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
43 > c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
44 > | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
45 > x b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
46 > \| |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
47 > a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
48 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
49 1 new orphan changesets |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
50 $ hg log -G -r 'a':: |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
51 * 7:1143e9adc121 f |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
52 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
53 | o 6:d60ebfa0f1cb e |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
54 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
55 | o 5:027ad6c5830d d' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
56 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
57 x | 4:76be324c128b d (rewritten using replace as 5:027ad6c5830d) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
58 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
59 o 3:a82ac2b38757 c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
60 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
61 | o 2:630d7c95eff7 x |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
62 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
63 o | 1:488e1b7e7341 b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
64 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
65 o 0:b173517d0057 a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
66 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
67 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
68 Changeset d and its descendants are excluded to avoid divergence of d, which |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
69 would occur because the successor of d (d') is also in rebaseset. As a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
70 consequence f (descendant of d) is left behind. |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
71 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
72 $ hg rebase -b 'e' -d 'x' |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
73 rebasing 1:488e1b7e7341 b "b" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
74 rebasing 3:a82ac2b38757 c "c" |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
75 note: not rebasing 4:76be324c128b d "d" and its descendants as this would cause divergence |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
76 rebasing 5:027ad6c5830d d' "d'" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
77 rebasing 6:d60ebfa0f1cb e "e" |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
78 $ hg log -G -r 'a':: |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
79 o 11:eb6d63fc4ed5 e |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
80 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
81 o 10:44d8c724a70c d' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
82 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
83 o 9:d008e6b4d3fd c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
84 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
85 o 8:67e8f4a16c49 b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
86 | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
87 | * 7:1143e9adc121 f |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
88 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
89 | | x 6:d60ebfa0f1cb e (rewritten using rebase as 11:eb6d63fc4ed5) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
90 | | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
91 | | x 5:027ad6c5830d d' (rewritten using rebase as 10:44d8c724a70c) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
92 | | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
93 | x | 4:76be324c128b d (rewritten using replace as 5:027ad6c5830d) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
94 | |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
95 | x 3:a82ac2b38757 c (rewritten using rebase as 9:d008e6b4d3fd) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
96 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
97 o | 2:630d7c95eff7 x |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
98 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
99 | x 1:488e1b7e7341 b (rewritten using rebase as 8:67e8f4a16c49) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
100 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
101 o 0:b173517d0057 a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
102 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
103 $ hg strip -r 8: |
39326
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
104 $ hg log -G -r 'a':: |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
105 * 7:1143e9adc121 f |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
106 | |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
107 | o 6:d60ebfa0f1cb e |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
108 | | |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
109 | o 5:027ad6c5830d d' |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
110 | | |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
111 x | 4:76be324c128b d (rewritten using replace as 5:027ad6c5830d) |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
112 |/ |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
113 o 3:a82ac2b38757 c |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
114 | |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
115 | o 2:630d7c95eff7 x |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
116 | | |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
117 o | 1:488e1b7e7341 b |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
118 |/ |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
119 o 0:b173517d0057 a |
63aa928be559
tests: add log output after stripping for context for next test
Martin von Zweigbergk <martinvonz@google.com>
parents:
39099
diff
changeset
|
120 |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
121 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
122 If the rebase set has an obsolete (d) with a successor (d') outside the rebase |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
123 set and none in destination, we still get the divergence warning. |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
124 By allowing divergence, we can perform the rebase. |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
125 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
126 $ hg rebase -r 'c'::'f' -d 'x' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
127 abort: this rebase will cause divergences from: 76be324c128b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
128 (to force the rebase please set experimental.evolution.allowdivergence=True) |
46632
9989a276712f
errors: use more specific errors in rebase extension
Martin von Zweigbergk <martinvonz@google.com>
parents:
45840
diff
changeset
|
129 [20] |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
130 $ hg rebase --config experimental.evolution.allowdivergence=true -r 'c'::'f' -d 'x' |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
131 rebasing 3:a82ac2b38757 c "c" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
132 rebasing 4:76be324c128b d "d" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
133 rebasing 7:1143e9adc121 f tip "f" |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
134 1 new orphan changesets |
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
135 2 new content-divergent changesets |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
136 $ hg log -G -r 'a':: -T instabilities |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
137 o 10:e1744ea07510 f |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
138 | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
139 * 9:e2b36ea9a0a0 d (content-divergent) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
140 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
141 o 8:6a0376de376e c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
142 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
143 | x 7:1143e9adc121 f |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
144 | | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
145 | | * 6:d60ebfa0f1cb e (orphan) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
146 | | | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
147 | | * 5:027ad6c5830d d' (orphan content-divergent) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
148 | | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
149 | x | 4:76be324c128b d |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
150 | |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
151 | x 3:a82ac2b38757 c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
152 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
153 o | 2:630d7c95eff7 x |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
154 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
155 | o 1:488e1b7e7341 b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
156 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
157 o 0:b173517d0057 a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
158 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
159 $ hg strip -r 8: |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
160 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
161 (Not skipping obsoletes means that divergence is allowed.) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
162 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
163 $ hg rebase --config experimental.rebaseskipobsolete=false -r 'c'::'f' -d 'x' |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
164 rebasing 3:a82ac2b38757 c "c" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
165 rebasing 4:76be324c128b d "d" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
166 rebasing 7:1143e9adc121 f tip "f" |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
167 1 new orphan changesets |
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
168 2 new content-divergent changesets |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
169 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
170 $ hg strip -r 0: |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
171 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
172 Similar test on a more complex graph |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
173 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
174 $ hg debugdrawdag <<EOF |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
175 > g |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
176 > | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
177 > f e |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
178 > | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
179 > e' d # replace: e -> e' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
180 > \ / |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
181 > c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
182 > | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
183 > x b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
184 > \| |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
185 > a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
186 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
187 1 new orphan changesets |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
188 $ hg log -G -r 'a': |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
189 * 8:2876ce66c6eb g |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
190 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
191 | o 7:3ffec603ab53 f |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
192 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
193 x | 6:e36fae928aec e (rewritten using replace as 5:63324dc512ea) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
194 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
195 | o 5:63324dc512ea e' |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
196 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
197 o | 4:76be324c128b d |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
198 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
199 o 3:a82ac2b38757 c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
200 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
201 | o 2:630d7c95eff7 x |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
202 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
203 o | 1:488e1b7e7341 b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
204 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
205 o 0:b173517d0057 a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
206 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
207 $ hg rebase -b 'f' -d 'x' |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
208 rebasing 1:488e1b7e7341 b "b" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
209 rebasing 3:a82ac2b38757 c "c" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
210 rebasing 4:76be324c128b d "d" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
211 note: not rebasing 6:e36fae928aec e "e" and its descendants as this would cause divergence |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
212 rebasing 5:63324dc512ea e' "e'" |
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
213 rebasing 7:3ffec603ab53 f "f" |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
214 $ hg log -G -r 'a': |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
215 o 13:ef6251596616 f |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
216 | |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
217 o 12:b6f172e64af9 e' |
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
218 | |
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
219 | o 11:a1707a5b7c2c d |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
220 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
221 o 10:d008e6b4d3fd c |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
222 | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
223 o 9:67e8f4a16c49 b |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
224 | |
35508
9b3f95d9783d
graphlog: add another graph node type, unstable, using character "*" (BC)
Anton Shestakov <av6@dwimlabs.net>
parents:
35393
diff
changeset
|
225 | * 8:2876ce66c6eb g |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
226 | | |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
227 | | x 7:3ffec603ab53 f (rewritten using rebase as 13:ef6251596616) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
228 | | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
229 | x | 6:e36fae928aec e (rewritten using replace as 5:63324dc512ea) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
230 | | | |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
231 | | x 5:63324dc512ea e' (rewritten using rebase as 12:b6f172e64af9) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
232 | | | |
46834
535de0e34a79
rebase: filter out descendants of divergence-causing commits earlier
Martin von Zweigbergk <martinvonz@google.com>
parents:
46830
diff
changeset
|
233 | x | 4:76be324c128b d (rewritten using rebase as 11:a1707a5b7c2c) |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
234 | |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
235 | x 3:a82ac2b38757 c (rewritten using rebase as 10:d008e6b4d3fd) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
236 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
237 o | 2:630d7c95eff7 x |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
238 | | |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
239 | x 1:488e1b7e7341 b (rewritten using rebase as 9:67e8f4a16c49) |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
240 |/ |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
241 o 0:b173517d0057 a |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
242 |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
243 |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
244 issue5782 |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
245 $ hg strip -r 0: |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
246 $ hg debugdrawdag <<EOF |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
247 > d |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
248 > | |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
249 > c1 c # replace: c -> c1 |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
250 > \ / |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
251 > b |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
252 > | |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
253 > a |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
254 > EOF |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
255 1 new orphan changesets |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
256 $ hg debugobsolete `hg log -T "{node}" --hidden -r 'desc("c1")'` |
42893
34a46d48d24e
debugobsolete: also issue the "new obsmarkers" messsage
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
40865
diff
changeset
|
257 1 new obsolescence markers |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
258 obsoleted 1 changesets |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
259 $ hg log -G -r 'a': --hidden |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
260 * 4:76be324c128b d |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
261 | |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
262 | x 3:ef8a456de8fa c1 (pruned) |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
263 | | |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
264 x | 2:a82ac2b38757 c (rewritten using replace as 3:ef8a456de8fa) |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
265 |/ |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
266 o 1:488e1b7e7341 b |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
267 | |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
268 o 0:b173517d0057 a |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
269 |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
270 $ hg rebase -d 0 -r 2 |
46801
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
271 note: not rebasing 2:a82ac2b38757 c "c", it has no successor |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
272 $ hg log -G -r 'a': --hidden |
46801
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
273 * 4:76be324c128b d |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
274 | |
46801
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
275 | x 3:ef8a456de8fa c1 (pruned) |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
276 | | |
46801
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
277 x | 2:a82ac2b38757 c (rewritten using replace as 3:ef8a456de8fa) |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
278 |/ |
46801
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
279 o 1:488e1b7e7341 b |
32399d0813e0
rebase: skip obsolete commits even if they have pruned successors
Martin von Zweigbergk <martinvonz@google.com>
parents:
46632
diff
changeset
|
280 | |
35993
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
281 o 0:b173517d0057 a |
a603a570cdbe
rebase: add a test case for issue5782
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
35778
diff
changeset
|
282 |
35058
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
283 $ cd .. |
a68c3420be41
rebase: exclude descendants of obsoletes w/o a successor in dest (issue5300)
Denis Laxalde <denis@laxalde.org>
parents:
35057
diff
changeset
|
284 |
46830
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
285 Start a normal rebase. When it runs into conflicts, rewrite one of the |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
286 commits in the rebase set, causing divergence when the rebase continues. |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
287 |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
288 $ hg init $TESTTMP/new-divergence-after-conflict |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
289 $ cd $TESTTMP/new-divergence-after-conflict |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
290 $ hg debugdrawdag <<'EOS' |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
291 > C2 |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
292 > | C1 |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
293 > |/ |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
294 > B # B/D=B |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
295 > | D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
296 > |/ |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
297 > A |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
298 > EOS |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
299 $ hg rebase -r B::C1 -d D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
300 rebasing 1:2ec65233581b B "B" |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
301 merging D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
302 warning: conflicts while merging D! (edit, then use 'hg resolve --mark') |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
303 unresolved conflicts (see 'hg resolve', then 'hg rebase --continue') |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
304 [240] |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
305 $ hg debugobsolete $(hg log -r C1 -T '{node}') $(hg log -r C2 -T '{node}') |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
306 1 new obsolescence markers |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
307 obsoleted 1 changesets |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
308 $ hg log -G |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
309 o 4:fdb9df6b130c C2 |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
310 | |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
311 | x 3:7e5bfd3c08f0 C1 (rewritten as 4:fdb9df6b130c) |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
312 |/ |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
313 | @ 2:b18e25de2cf5 D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
314 | | |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
315 % | 1:2ec65233581b B |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
316 |/ |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
317 o 0:426bada5c675 A |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
318 |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
319 $ echo resolved > D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
320 $ hg resolve -m D |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
321 (no more unresolved files) |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
322 continue: hg rebase --continue |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
323 $ hg rebase -c |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
324 rebasing 1:2ec65233581b B "B" |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
325 note: not rebasing 3:7e5bfd3c08f0 C1 "C1" and its descendants as this would cause divergence |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
326 1 new orphan changesets |
6648307d4fe8
tests: test divergence created during interrupted rebase
Martin von Zweigbergk <martinvonz@google.com>
parents:
46829
diff
changeset
|
327 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
328 Rebase merge where successor of one parent is equal to destination (issue5198) |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
329 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
330 $ hg init p1-succ-is-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
331 $ cd p1-succ-is-dest |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
332 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
333 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
334 > F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
335 > /| |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
336 > E D B # replace: D -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
337 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
338 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
339 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
340 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
341 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
342 $ hg rebase -d B -s D |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
343 note: not rebasing 2:b18e25de2cf5 D "D", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
344 rebasing 4:66f1a38021c9 F tip "F" |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
345 $ hg log -G |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
346 o 5:50e9d60b99c6 F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
347 |\ |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
348 | | x 4:66f1a38021c9 F (rewritten using rebase as 5:50e9d60b99c6) |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
349 | |/| |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
350 | o | 3:7fb047a69f22 E |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
351 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
352 | | x 2:b18e25de2cf5 D (rewritten using replace as 1:112478962961) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
353 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
354 o | 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
355 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
356 o 0:426bada5c675 A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
357 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
358 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
359 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
360 Rebase merge where successor of other parent is equal to destination |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
361 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
362 $ hg init p2-succ-is-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
363 $ cd p2-succ-is-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
364 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
365 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
366 > F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
367 > /| |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
368 > E D B # replace: E -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
369 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
370 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
371 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
372 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
373 |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
374 $ hg rebase -d B -s E |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
375 note: not rebasing 3:7fb047a69f22 E "E", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
376 rebasing 4:66f1a38021c9 F tip "F" |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
377 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
378 o 5:aae1787dacee F |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
379 |\ |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
380 | | x 4:66f1a38021c9 F (rewritten using rebase as 5:aae1787dacee) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
381 | |/| |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
382 | | x 3:7fb047a69f22 E (rewritten using replace as 1:112478962961) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
383 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
384 | o | 2:b18e25de2cf5 D |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
385 | |/ |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
386 o / 1:112478962961 B |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
387 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
388 o 0:426bada5c675 A |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
389 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
390 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
391 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
392 Rebase merge where successor of one parent is ancestor of destination |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
393 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
394 $ hg init p1-succ-in-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
395 $ cd p1-succ-in-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
396 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
397 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
398 > F C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
399 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
400 > E D B # replace: D -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
401 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
402 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
403 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
404 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
405 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
406 $ hg rebase -d C -s D |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
407 note: not rebasing 2:b18e25de2cf5 D "D", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
408 rebasing 5:66f1a38021c9 F tip "F" |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
409 |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
410 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
411 o 6:0913febf6439 F |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
412 |\ |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
413 +---x 5:66f1a38021c9 F (rewritten using rebase as 6:0913febf6439) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
414 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
415 | o | 4:26805aba1e60 C |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
416 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
417 o | | 3:7fb047a69f22 E |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
418 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
419 +---x 2:b18e25de2cf5 D (rewritten using replace as 1:112478962961) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
420 | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
421 | o 1:112478962961 B |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
422 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
423 o 0:426bada5c675 A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
424 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
425 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
426 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
427 Rebase merge where successor of other parent is ancestor of destination |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
428 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
429 $ hg init p2-succ-in-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
430 $ cd p2-succ-in-dest |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
431 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
432 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
433 > F C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
434 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
435 > E D B # replace: E -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
436 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
437 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
438 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
439 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
440 |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
441 $ hg rebase -d C -s E |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
442 note: not rebasing 3:7fb047a69f22 E "E", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
443 rebasing 5:66f1a38021c9 F tip "F" |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
444 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
445 o 6:c6ab0cc6d220 F |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
446 |\ |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
447 +---x 5:66f1a38021c9 F (rewritten using rebase as 6:c6ab0cc6d220) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
448 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
449 | o | 4:26805aba1e60 C |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
450 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
451 | | x 3:7fb047a69f22 E (rewritten using replace as 1:112478962961) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
452 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
453 o---+ 2:b18e25de2cf5 D |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
454 / / |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
455 o / 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
456 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
457 o 0:426bada5c675 A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
458 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
459 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
460 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
461 Rebase merge where successor of one parent is ancestor of destination |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
462 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
463 $ hg init p1-succ-in-dest-b |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
464 $ cd p1-succ-in-dest-b |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
465 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
466 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
467 > F C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
468 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
469 > E D B # replace: E -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
470 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
471 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
472 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
473 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
474 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
475 $ hg rebase -d C -b F |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
476 rebasing 2:b18e25de2cf5 D "D" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
477 note: not rebasing 3:7fb047a69f22 E "E", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
478 rebasing 5:66f1a38021c9 F tip "F" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
479 note: not rebasing 5:66f1a38021c9 F tip "F", its destination already has all its changes |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
480 $ hg log -G |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
481 o 6:8f47515dda15 D |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
482 | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
483 | x 5:66f1a38021c9 F (pruned using rebase) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
484 | |\ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
485 o | | 4:26805aba1e60 C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
486 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
487 | | x 3:7fb047a69f22 E (rewritten using replace as 1:112478962961) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
488 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
489 | x | 2:b18e25de2cf5 D (rewritten using rebase as 6:8f47515dda15) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
490 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
491 o / 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
492 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
493 o 0:426bada5c675 A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
494 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
495 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
496 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
497 Rebase merge where successor of other parent is ancestor of destination |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
498 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
499 $ hg init p2-succ-in-dest-b |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
500 $ cd p2-succ-in-dest-b |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
501 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
502 $ hg debugdrawdag <<EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
503 > F C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
504 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
505 > E D B # replace: D -> B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
506 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
507 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
508 > EOF |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
509 1 new orphan changesets |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
510 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
511 $ hg rebase -d C -b F |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
512 note: not rebasing 2:b18e25de2cf5 D "D", already in destination as 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
513 rebasing 3:7fb047a69f22 E "E" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
514 rebasing 5:66f1a38021c9 F tip "F" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
515 note: not rebasing 5:66f1a38021c9 F tip "F", its destination already has all its changes |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
516 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
517 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
518 o 6:533690786a86 E |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
519 | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
520 | x 5:66f1a38021c9 F (pruned using rebase) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
521 | |\ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
522 o | | 4:26805aba1e60 C |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
523 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
524 | | x 3:7fb047a69f22 E (rewritten using rebase as 6:533690786a86) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
525 | | | |
35056
235d58aa723e
tests: conditionally display obsfate in test-rebase-obsolete log output
Denis Laxalde <denis@laxalde.org>
parents:
35055
diff
changeset
|
526 | x | 2:b18e25de2cf5 D (rewritten using replace as 1:112478962961) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
527 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
528 o / 1:112478962961 B |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
529 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
530 o 0:426bada5c675 A |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
531 |
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
532 $ cd .. |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
533 |
39327
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
534 Rebase merge where extinct node has successor that is not an ancestor of |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
535 destination |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
536 |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
537 $ hg init extinct-with-succ-not-in-dest |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
538 $ cd extinct-with-succ-not-in-dest |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
539 |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
540 $ hg debugdrawdag <<EOF |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
541 > E C # replace: C -> E |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
542 > | | |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
543 > D B |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
544 > |/ |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
545 > A |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
546 > EOF |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
547 |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
548 $ hg rebase -d D -s B |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
549 rebasing 1:112478962961 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
550 note: not rebasing 3:26805aba1e60 C "C" and its descendants as this would cause divergence |
39327
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
551 |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
552 $ cd .. |
a3af500a1362
tests: add test showing that rebase of extinct commit with successor fails
Martin von Zweigbergk <martinvonz@google.com>
parents:
39326
diff
changeset
|
553 |
38183
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
554 $ hg init p2-succ-in-dest-c |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
555 $ cd p2-succ-in-dest-c |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
556 |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
557 The scenario here was that B::D were developed on default. B was queued on |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
558 stable, but amended before being push to hg-committed. C was queued on default, |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
559 along with unrelated J. |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
560 |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
561 $ hg debugdrawdag <<EOF |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
562 > J |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
563 > | |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
564 > F |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
565 > | |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
566 > E |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
567 > | D |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
568 > | | |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
569 > | C # replace: C -> F |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
570 > | | H I # replace: B -> H -> I |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
571 > | B |/ |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
572 > |/ G |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
573 > A |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
574 > EOF |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
575 1 new orphan changesets |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
576 |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
577 This strip seems to be the key to avoid an early divergence warning. |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
578 $ hg --config extensions.strip= --hidden strip -qr H |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
579 1 new orphan changesets |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
580 |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
581 $ hg rebase -b 'desc("D")' -d 'desc("J")' |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
582 abort: this rebase will cause divergences from: 112478962961 |
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
583 (to force the rebase please set experimental.evolution.allowdivergence=True) |
46632
9989a276712f
errors: use more specific errors in rebase extension
Martin von Zweigbergk <martinvonz@google.com>
parents:
45840
diff
changeset
|
584 [20] |
38183
69d1cafe75f2
rebase: avoid RevlogError when computing obsoletenotrebased (issue5907)
Matt Harbison <matt_harbison@yahoo.com>
parents:
37787
diff
changeset
|
585 |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
586 Rebase merge where both parents have successors in destination |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
587 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
588 $ hg init p12-succ-in-dest |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
589 $ cd p12-succ-in-dest |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
590 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
591 > E F |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
592 > /| /| # replace: A -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
593 > A B C D # replace: B -> D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
594 > | | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
595 > X Y |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
596 > EOS |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
597 1 new orphan changesets |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
598 $ hg rebase -r A+B+E -d F |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
599 note: not rebasing 4:a3d17304151f A "A", already in destination as 0:96cc3511f894 C "C" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
600 note: not rebasing 5:b23a2cc00842 B "B", already in destination as 1:058c1e1fb10a D "D" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
601 rebasing 7:dac5d11c5a7d E tip "E" |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
602 abort: rebasing 7:dac5d11c5a7d will include unwanted changes from 3:59c792af609c, 5:b23a2cc00842 or 2:ba2b7fa7166d, 4:a3d17304151f |
46632
9989a276712f
errors: use more specific errors in rebase extension
Martin von Zweigbergk <martinvonz@google.com>
parents:
45840
diff
changeset
|
603 [10] |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
604 $ cd .. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
605 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
606 Rebase a non-clean merge. One parent has successor in destination, the other |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
607 parent moves as requested. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
608 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
609 $ hg init p1-succ-p2-move |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
610 $ cd p1-succ-p2-move |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
611 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
612 > D Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
613 > /| | # replace: A -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
614 > A B C # D/D = D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
615 > EOS |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
616 1 new orphan changesets |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
617 $ hg rebase -r A+B+D -d Z |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
618 note: not rebasing 0:426bada5c675 A "A", already in destination as 2:96cc3511f894 C "C" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
619 rebasing 1:fc2b737bb2e5 B "B" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
620 rebasing 3:b8ed089c80ad D "D" |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
621 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
622 $ rm .hg/localtags |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
623 $ hg log -G |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
624 o 6:e4f78693cc88 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
625 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
626 o 5:76840d832e98 B |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
627 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
628 o 4:50e41c1f3950 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
629 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
630 o 2:96cc3511f894 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
631 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
632 $ hg files -r tip |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
633 B |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
634 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
635 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
636 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
637 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
638 $ cd .. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
639 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
640 $ hg init p1-move-p2-succ |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
641 $ cd p1-move-p2-succ |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
642 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
643 > D Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
644 > /| | # replace: B -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
645 > A B C # D/D = D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
646 > EOS |
35709
1a09dad8b85a
evolution: report new unstable changesets
Martin von Zweigbergk <martinvonz@google.com>
parents:
35611
diff
changeset
|
647 1 new orphan changesets |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
648 $ hg rebase -r B+A+D -d Z |
45771
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
649 rebasing 0:426bada5c675 A "A" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
650 note: not rebasing 1:fc2b737bb2e5 B "B", already in destination as 2:96cc3511f894 C "C" |
f90a5c211251
rebase: change and standarize template for rebase's one-line summary
Martin von Zweigbergk <martinvonz@google.com>
parents:
45765
diff
changeset
|
651 rebasing 3:b8ed089c80ad D "D" |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
652 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
653 $ rm .hg/localtags |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
654 $ hg log -G |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
655 o 6:1b355ed94d82 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
656 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
657 o 5:a81a74d764a6 A |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
658 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
659 o 4:50e41c1f3950 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
660 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
661 o 2:96cc3511f894 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
662 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
663 $ hg files -r tip |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
664 A |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
665 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
666 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
667 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
668 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
669 $ cd .. |