Mercurial > hg
annotate tests/test-rebase-obsolete3.t @ 49603:3eda36e9b3d6 stable
matcher: fix issues regex flag contained in pattern (issue6759)
Python 3.11 is now enforcing that flag must be at the beginning of the regex
This creates a serious regression for people using Python 3.11 with an hgignore
using flag in a "relre" pattern.
We now detect any flags in such pattern and "prepend" our ".*" pattern after them.
In addition, we now insert the flag in the regexp to only affect the pattern we
are rewriting. Otherwise, the regex built from the combined pattern would these
flags in the middle of it anyway.
As a side effect of this last change, we fix a bug… before this change regex
flag in a pattern would affect all combined patterns. That was bad and is not
longer the case.
The Rust code needs to be updated to fix that very bug, but we will do it in
another changeset.
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Wed, 16 Nov 2022 13:05:01 +0100 |
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 .. |