Mercurial > hg
annotate tests/test-rebase-obsolete.t @ 34874:e3fbf8e3fef2
configitems: do not directly match generic items
Before this changesets, a literal '.*:foo$' config would match a registered
'.*:foo$' generic. This is wrong since generic should be matched through
regular exception only. This changeset fixes this problem.
Thanks for to Yuya Nishihara for spotting the issue.
author | Boris Feld <boris.feld@octobus.net> |
---|---|
date | Wed, 18 Oct 2017 12:26:08 +0200 |
parents | 29f52e7966dd |
children | a7e49a5b3e6f |
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 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
8 > [ui] |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
9 > logtemplate= {rev}:{node|short} {desc|firstline} |
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 |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
18 > EOF |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
19 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
20 Setup rebase canonical repo |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
21 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
22 $ hg init base |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
23 $ cd base |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
24 $ hg unbundle "$TESTDIR/bundles/rebase.hg" |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
25 adding changesets |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
26 adding manifests |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
27 adding file changes |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
28 added 8 changesets with 7 changes to 7 files (+2 heads) |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34290
diff
changeset
|
29 new changesets cd010b8cd998:02de42196ebe |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
30 (run 'hg heads' to see heads, 'hg merge' to merge) |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
31 $ hg up tip |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
32 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
33 $ hg log -G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
34 @ 7:02de42196ebe H |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
35 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
36 | o 6:eea13746799a G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
37 |/| |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
38 o | 5:24b6387c8c8c F |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
39 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
40 | o 4:9520eea781bc E |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
41 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
42 | o 3:32af7686d403 D |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
43 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
44 | o 2:5fddd98957c8 C |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
45 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
46 | o 1:42ccdea3bb16 B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
47 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
48 o 0:cd010b8cd998 A |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
49 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
50 $ cd .. |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
51 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
52 simple rebase |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
53 --------------------------------- |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
54 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
55 $ hg clone base simple |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
56 updating to branch default |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
57 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
58 $ cd simple |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
59 $ hg up 32af7686d403 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
60 3 files updated, 0 files merged, 2 files removed, 0 files unresolved |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
61 $ hg rebase -d eea13746799a |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
62 rebasing 1:42ccdea3bb16 "B" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
63 rebasing 2:5fddd98957c8 "C" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
64 rebasing 3:32af7686d403 "D" |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
65 $ hg log -G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
66 @ 10:8eeb3c33ad33 D |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
67 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
68 o 9:2327fea05063 C |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
69 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
70 o 8:e4e5be0395b2 B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
71 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
72 | o 7:02de42196ebe H |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
73 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
74 o | 6:eea13746799a G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
75 |\| |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
76 | o 5:24b6387c8c8c F |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
77 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
78 o | 4:9520eea781bc E |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
79 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
80 o 0:cd010b8cd998 A |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
81 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
82 $ hg log --hidden -G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
83 @ 10:8eeb3c33ad33 D |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
84 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
85 o 9:2327fea05063 C |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
86 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
87 o 8:e4e5be0395b2 B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
88 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
89 | o 7:02de42196ebe H |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
90 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
91 o | 6:eea13746799a G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
92 |\| |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
93 | o 5:24b6387c8c8c F |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
94 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
95 o | 4:9520eea781bc E |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
96 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
97 | x 3:32af7686d403 D |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
98 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
99 | x 2:5fddd98957c8 C |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
100 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
101 | x 1:42ccdea3bb16 B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
102 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
103 o 0:cd010b8cd998 A |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
104 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
105 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
106 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 e4e5be0395b2cbd471ed22a26b1b6a1a0658a794 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
107 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 2327fea05063f39961b14cb69435a9898dc9a245 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
108 32af7686d403cf45b5d95f2d70cebea587ac806a 8eeb3c33ad33d452c89e5dcf611c347f978fb42b 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
109 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
110 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
111 $ cd .. |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
112 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
113 empty changeset |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
114 --------------------------------- |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
115 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
116 $ hg clone base empty |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
117 updating to branch default |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
118 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
119 $ cd empty |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
120 $ hg up eea13746799a |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
121 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
122 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
123 We make a copy of both the first changeset in the rebased and some other in the |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
124 set. |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
125 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
126 $ hg graft 42ccdea3bb16 32af7686d403 |
23505
bd5dbb8a05c8
graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents:
22955
diff
changeset
|
127 grafting 1:42ccdea3bb16 "B" |
bd5dbb8a05c8
graft: show more useful status information while grafting
Mads Kiilerich <madski@unity3d.com>
parents:
22955
diff
changeset
|
128 grafting 3:32af7686d403 "D" |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
129 $ hg rebase -s 42ccdea3bb16 -d . |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
130 rebasing 1:42ccdea3bb16 "B" |
23518
2fb0504b8175
rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents:
23517
diff
changeset
|
131 note: rebase of 1:42ccdea3bb16 created no changes to commit |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
132 rebasing 2:5fddd98957c8 "C" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
133 rebasing 3:32af7686d403 "D" |
23518
2fb0504b8175
rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents:
23517
diff
changeset
|
134 note: rebase of 3:32af7686d403 created no changes to commit |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
135 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
136 o 10:5ae4c968c6ac C |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
137 | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
138 @ 9:08483444fef9 D |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
139 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
140 o 8:8877864f1edb B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
141 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
142 | o 7:02de42196ebe H |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
143 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
144 o | 6:eea13746799a G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
145 |\| |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
146 | o 5:24b6387c8c8c F |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
147 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
148 o | 4:9520eea781bc E |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
149 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
150 o 0:cd010b8cd998 A |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
151 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
152 $ hg log --hidden -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
153 o 10:5ae4c968c6ac C |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
154 | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
155 @ 9:08483444fef9 D |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
156 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
157 o 8:8877864f1edb B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
158 | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
159 | o 7:02de42196ebe H |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
160 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
161 o | 6:eea13746799a G |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
162 |\| |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
163 | o 5:24b6387c8c8c F |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
164 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
165 o | 4:9520eea781bc E |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
166 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
167 | x 3:32af7686d403 D |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
168 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
169 | x 2:5fddd98957c8 C |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
170 | | |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
171 | x 1:42ccdea3bb16 B |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
172 |/ |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
173 o 0:cd010b8cd998 A |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
174 |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
175 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
176 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
177 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
178 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
179 |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
180 |
31295
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
181 More complex case where part of the rebase set were already rebased |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
182 |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
183 $ hg rebase --rev 'desc(D)' --dest 'desc(H)' |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
184 rebasing 9:08483444fef9 "D" |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
185 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
186 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
187 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
188 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
189 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
190 $ hg log -G |
19861
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
191 @ 11:4596109a6a43 D |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
192 | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
193 | o 10:5ae4c968c6ac C |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
194 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
195 | x 9:08483444fef9 D |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
196 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
197 | o 8:8877864f1edb B |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
198 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
199 o | 7:02de42196ebe H |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
200 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
201 | o 6:eea13746799a G |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
202 |/| |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
203 o | 5:24b6387c8c8c F |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
204 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
205 | o 4:9520eea781bc E |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
206 |/ |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
207 o 0:cd010b8cd998 A |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
208 |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
209 $ hg rebase --source 'desc(B)' --dest 'tip' --config experimental.rebaseskipobsolete=True |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
210 rebasing 8:8877864f1edb "B" |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
211 note: not rebasing 9:08483444fef9 "D", already in destination as 11:4596109a6a43 "D" (tip) |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
212 rebasing 10:5ae4c968c6ac "C" |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
213 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
214 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 0 {cd010b8cd998f3981a5a8115f94f8da4ab506089} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
215 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 5ae4c968c6aca831df823664e706c9d4aa34473d 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
216 32af7686d403cf45b5d95f2d70cebea587ac806a 0 {5fddd98957c8a54a4d436dfe1da9d87f21a1b97b} (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
217 08483444fef91d6224f6655ee586a65d263ad34c 4596109a6a4328c398bde3a4a3b6737cfade3003 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
218 8877864f1edb05d0e07dc4ba77b67a80a7b86672 462a34d07e599b87ea08676a449373fe4e2e1347 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
219 5ae4c968c6aca831df823664e706c9d4aa34473d 98f6af4ee9539e14da4465128f894c274900b6e5 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
33775
f078d7358e90
revset: remane divergent into contentdivergent
Boris Feld <boris.feld@octobus.net>
parents:
33773
diff
changeset
|
220 $ hg log --rev 'contentdivergent()' |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
221 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
222 o 13:98f6af4ee953 C |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
223 | |
19861
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
224 o 12:462a34d07e59 B |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
225 | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
226 @ 11:4596109a6a43 D |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
227 | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
228 o 7:02de42196ebe H |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
229 | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
230 | o 6:eea13746799a G |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
231 |/| |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
232 o | 5:24b6387c8c8c F |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
233 | | |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
234 | o 4:9520eea781bc E |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
235 |/ |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
236 o 0:cd010b8cd998 A |
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
237 |
19861
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
238 $ hg log --style default --debug -r 4596109a6a4328c398bde3a4a3b6737cfade3003 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
239 changeset: 11:4596109a6a4328c398bde3a4a3b6737cfade3003 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
240 phase: draft |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
241 parent: 7:02de42196ebee42ef284b6780a87cdc96e8eaab6 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
242 parent: -1:0000000000000000000000000000000000000000 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
243 manifest: 11:a91006e3a02f1edf631f7018e6e5684cf27dd905 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
244 user: Nicolas Dumazet <nicdumz.commits@gmail.com> |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
245 date: Sat Apr 30 15:24:48 2011 +0200 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
246 files+: D |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
247 extra: branch=default |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
248 extra: rebase_source=08483444fef91d6224f6655ee586a65d263ad34c |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
249 extra: source=32af7686d403cf45b5d95f2d70cebea587ac806a |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
250 description: |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
251 D |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
252 |
a69a77a80900
rebase: preserve metadata from grafts of changes (issue4001)
Augie Fackler <raf@durin42.com>
parents:
18472
diff
changeset
|
253 |
26902
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
254 $ hg up -qr 'desc(G)' |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
255 $ hg graft 4596109a6a4328c398bde3a4a3b6737cfade3003 |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
256 grafting 11:4596109a6a43 "D" |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
257 $ hg up -qr 'desc(E)' |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
258 $ hg rebase -s tip -d . |
27974
bb14a81ce647
graft: don't preserve most extra fields
Siddharth Agarwal <sid0@fb.com>
parents:
27746
diff
changeset
|
259 rebasing 14:9e36056a46e3 "D" (tip) |
26902
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
260 $ hg log --style default --debug -r tip |
27974
bb14a81ce647
graft: don't preserve most extra fields
Siddharth Agarwal <sid0@fb.com>
parents:
27746
diff
changeset
|
261 changeset: 15:627d4614809036ba22b9e7cb31638ddc06ab99ab |
26902
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
262 tag: tip |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
263 phase: draft |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
264 parent: 4:9520eea781bcca16c1e15acc0ba14335a0e8e5ba |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
265 parent: -1:0000000000000000000000000000000000000000 |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
266 manifest: 15:648e8ede73ae3e497d093d3a4c8fcc2daa864f42 |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
267 user: Nicolas Dumazet <nicdumz.commits@gmail.com> |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
268 date: Sat Apr 30 15:24:48 2011 +0200 |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
269 files+: D |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
270 extra: branch=default |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
271 extra: intermediate-source=4596109a6a4328c398bde3a4a3b6737cfade3003 |
27974
bb14a81ce647
graft: don't preserve most extra fields
Siddharth Agarwal <sid0@fb.com>
parents:
27746
diff
changeset
|
272 extra: rebase_source=9e36056a46e37c9776168c7375734eebc70e294f |
26902
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
273 extra: source=32af7686d403cf45b5d95f2d70cebea587ac806a |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
274 description: |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
275 D |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
276 |
7ffebbdcb371
rebase: preserve the 'intermediate-source' attribute of grafts
Matt Harbison <matt_harbison@yahoo.com>
parents:
26811
diff
changeset
|
277 |
31295
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
278 Start rebase from a commit that is obsolete but not hidden only because it's |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
279 a working copy parent. We should be moved back to the starting commit as usual |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
280 even though it is hidden (until we're moved there). |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
281 |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
282 $ hg --hidden up -qr 'first(hidden())' |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
283 $ hg rebase --rev 13 --dest 15 |
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
284 rebasing 13:98f6af4ee953 "C" |
31297
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
285 $ hg log -G |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
286 o 16:294a2b93eb4d C |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
287 | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
288 o 15:627d46148090 D |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
289 | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
290 | o 12:462a34d07e59 B |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
291 | | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
292 | o 11:4596109a6a43 D |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
293 | | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
294 | o 7:02de42196ebe H |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
295 | | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
296 +---o 6:eea13746799a G |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
297 | |/ |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
298 | o 5:24b6387c8c8c F |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
299 | | |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
300 o | 4:9520eea781bc E |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
301 |/ |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
302 | @ 1:42ccdea3bb16 B |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
303 |/ |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
304 o 0:cd010b8cd998 A |
f5c71e98f0f7
rebase: unhide original working directory node as well (issue5219)
Martin von Zweigbergk <martinvonz@google.com>
parents:
31295
diff
changeset
|
305 |
31295
7f869d81ab54
tests: demonstrate broken rebase from obsolete commit
Martin von Zweigbergk <martinvonz@google.com>
parents:
30715
diff
changeset
|
306 |
17612
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
307 $ cd .. |
fc2a6114f0a0
rebase: allow creation obsolescence relation instead of stripping
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
diff
changeset
|
308 |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
309 collapse rebase |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
310 --------------------------------- |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
311 |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
312 $ hg clone base collapse |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
313 updating to branch default |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
314 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
315 $ cd collapse |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
316 $ hg rebase -s 42ccdea3bb16 -d eea13746799a --collapse |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
317 rebasing 1:42ccdea3bb16 "B" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
318 rebasing 2:5fddd98957c8 "C" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
319 rebasing 3:32af7686d403 "D" |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
320 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
321 o 8:4dc2197e807b Collapsed revision |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
322 | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
323 | @ 7:02de42196ebe H |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
324 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
325 o | 6:eea13746799a G |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
326 |\| |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
327 | o 5:24b6387c8c8c F |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
328 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
329 o | 4:9520eea781bc E |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
330 |/ |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
331 o 0:cd010b8cd998 A |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
332 |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
333 $ hg log --hidden -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
334 o 8:4dc2197e807b Collapsed revision |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
335 | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
336 | @ 7:02de42196ebe H |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
337 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
338 o | 6:eea13746799a G |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
339 |\| |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
340 | o 5:24b6387c8c8c F |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
341 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
342 o | 4:9520eea781bc E |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
343 |/ |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
344 | x 3:32af7686d403 D |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
345 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
346 | x 2:5fddd98957c8 C |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
347 | | |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
348 | x 1:42ccdea3bb16 B |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
349 |/ |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
350 o 0:cd010b8cd998 A |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
351 |
19924
c23c62209cc4
tests: prepare rebase test for wc parent preservation
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19861
diff
changeset
|
352 $ hg id --debug -r tip |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
353 4dc2197e807bae9817f09905b50ab288be2dbbcf tip |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
354 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
355 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
356 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
357 32af7686d403cf45b5d95f2d70cebea587ac806a 4dc2197e807bae9817f09905b50ab288be2dbbcf 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
17613
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
358 |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
359 $ cd .. |
aafc521668d8
rebase: properly handle --collapse when creating obsolescence marker
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17612
diff
changeset
|
360 |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
361 Rebase set has hidden descendants |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
362 --------------------------------- |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
363 |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
364 We rebase a changeset which has a hidden changeset. The hidden changeset must |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
365 not be rebased. |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
366 |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
367 $ hg clone base hidden |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
368 updating to branch default |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
369 3 files updated, 0 files merged, 0 files removed, 0 files unresolved |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
370 $ cd hidden |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
371 $ hg rebase -s 5fddd98957c8 -d eea13746799a |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
372 rebasing 2:5fddd98957c8 "C" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
373 rebasing 3:32af7686d403 "D" |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
374 $ hg rebase -s 42ccdea3bb16 -d 02de42196ebe |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
375 rebasing 1:42ccdea3bb16 "B" |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
376 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
377 o 10:7c6027df6a99 B |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
378 | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
379 | o 9:cf44d2f5a9f4 D |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
380 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
381 | o 8:e273c5e7d2d2 C |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
382 | | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
383 @ | 7:02de42196ebe H |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
384 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
385 | o 6:eea13746799a G |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
386 |/| |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
387 o | 5:24b6387c8c8c F |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
388 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
389 | o 4:9520eea781bc E |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
390 |/ |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
391 o 0:cd010b8cd998 A |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
392 |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
393 $ hg log --hidden -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
394 o 10:7c6027df6a99 B |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
395 | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
396 | o 9:cf44d2f5a9f4 D |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
397 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
398 | o 8:e273c5e7d2d2 C |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
399 | | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
400 @ | 7:02de42196ebe H |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
401 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
402 | o 6:eea13746799a G |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
403 |/| |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
404 o | 5:24b6387c8c8c F |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
405 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
406 | o 4:9520eea781bc E |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
407 |/ |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
408 | x 3:32af7686d403 D |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
409 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
410 | x 2:5fddd98957c8 C |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
411 | | |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
412 | x 1:42ccdea3bb16 B |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
413 |/ |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
414 o 0:cd010b8cd998 A |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
415 |
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
416 $ hg debugobsolete |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
417 5fddd98957c8a54a4d436dfe1da9d87f21a1b97b e273c5e7d2d29df783dce9f9eaa3ac4adc69c15d 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
418 32af7686d403cf45b5d95f2d70cebea587ac806a cf44d2f5a9f4297a62be94cbdd3dff7c7dc54258 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
419 42ccdea3bb16d28e1848c95fe2e44c000f3f21b1 7c6027df6a99d93f461868e5433f63bde20b6dfb 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
17615
9e2dc0d292cd
rebase: ensure rebase does not revive extinct revision
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17613
diff
changeset
|
420 |
18398
1a00c8451640
test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18164
diff
changeset
|
421 Test that rewriting leaving instability behind is allowed |
1a00c8451640
test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18164
diff
changeset
|
422 --------------------------------------------------------------------- |
18164
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
423 |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
424 $ hg log -r 'children(8)' |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
425 9:cf44d2f5a9f4 D (no-eol) |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
426 $ hg rebase -r 8 |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
427 rebasing 8:e273c5e7d2d2 "C" |
18164
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
428 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
429 o 11:0d8f238b634c C |
18164
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
430 | |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
431 o 10:7c6027df6a99 B |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
432 | |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
433 | o 9:cf44d2f5a9f4 D |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
434 | | |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
435 | x 8:e273c5e7d2d2 C |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
436 | | |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
437 @ | 7:02de42196ebe H |
18164
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
438 | | |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
439 | o 6:eea13746799a G |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
440 |/| |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
441 o | 5:24b6387c8c8c F |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
442 | | |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
443 | o 4:9520eea781bc E |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
444 |/ |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
445 o 0:cd010b8cd998 A |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
446 |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
447 |
bacf55bd8f90
rebase: allow non-head rebase-set when obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17615
diff
changeset
|
448 |
18424
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
449 Test multiple root handling |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
450 ------------------------------------ |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
451 |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
452 $ hg rebase --dest 4 --rev '7+11+9' |
30007
aca0954d3739
rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents:
29372
diff
changeset
|
453 rebasing 9:cf44d2f5a9f4 "D" |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
454 rebasing 7:02de42196ebe "H" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
455 rebasing 11:0d8f238b634c "C" (tip) |
18424
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
456 $ hg log -G |
19925
9c78ed396075
rebase: preserve working directory parent (BC)
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
19924
diff
changeset
|
457 o 14:1e8370e38cca C |
18424
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
458 | |
30007
aca0954d3739
rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents:
29372
diff
changeset
|
459 @ 13:bfe264faf697 H |
aca0954d3739
rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents:
29372
diff
changeset
|
460 | |
aca0954d3739
rebase: rebase changesets in topo order (issue5370) (BC)
Xidorn Quan <me@upsuper.org>
parents:
29372
diff
changeset
|
461 | o 12:102b4c1d889b D |
18424
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
462 |/ |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
463 | o 10:7c6027df6a99 B |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
464 | | |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
465 | x 7:02de42196ebe H |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
466 | | |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
467 +---o 6:eea13746799a G |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
468 | |/ |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
469 | o 5:24b6387c8c8c F |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
470 | | |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
471 o | 4:9520eea781bc E |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
472 |/ |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
473 o 0:cd010b8cd998 A |
100fdc84670f
rebase: support multiple roots for rebaseset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18398
diff
changeset
|
474 |
18444
55aff0c2b73c
rebase: do not invent successor to skipped changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18424
diff
changeset
|
475 $ cd .. |
18472
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
476 |
33678
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
477 Detach both parents |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
478 |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
479 $ hg init double-detach |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
480 $ cd double-detach |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
481 |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
482 $ hg debugdrawdag <<EOF |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
483 > F |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
484 > /| |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
485 > C E |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
486 > | | |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
487 > B D G |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
488 > \|/ |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
489 > A |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
490 > EOF |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
491 |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
492 $ hg rebase -d G -r 'B + D + F' |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
493 rebasing 1:112478962961 "B" (B) |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
494 rebasing 2:b18e25de2cf5 "D" (D) |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
495 rebasing 6:f15c3adaf214 "F" (F tip) |
33789
19f495fef0a3
rebase: change "result would have 3 parent" error message (BC)
Jun Wu <quark@fb.com>
parents:
33786
diff
changeset
|
496 abort: cannot rebase 6:f15c3adaf214 without moving at least one of its parents |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
497 [255] |
33678
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
498 |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
499 $ cd .. |
855a1856466d
tests: demonstrate crash when trying to rebase merge without its parents
Martin von Zweigbergk <martinvonz@google.com>
parents:
33677
diff
changeset
|
500 |
18472
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
501 test on rebase dropping a merge |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
502 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
503 (setup) |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
504 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
505 $ hg init dropmerge |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
506 $ cd dropmerge |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
507 $ hg unbundle "$TESTDIR/bundles/rebase.hg" |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
508 adding changesets |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
509 adding manifests |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
510 adding file changes |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
511 added 8 changesets with 7 changes to 7 files (+2 heads) |
34661
eb586ed5d8ce
transaction-summary: show the range of new revisions upon pull/unbundle (BC)
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
34290
diff
changeset
|
512 new changesets cd010b8cd998:02de42196ebe |
18472
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
513 (run 'hg heads' to see heads, 'hg merge' to merge) |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
514 $ hg up 3 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
515 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
516 $ hg merge 7 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
517 2 files updated, 0 files merged, 0 files removed, 0 files unresolved |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
518 (branch merge, don't forget to commit) |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
519 $ hg ci -m 'M' |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
520 $ echo I > I |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
521 $ hg add I |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
522 $ hg ci -m I |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
523 $ hg log -G |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
524 @ 9:4bde274eefcf I |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
525 | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
526 o 8:53a6a128b2b7 M |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
527 |\ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
528 | o 7:02de42196ebe H |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
529 | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
530 | | o 6:eea13746799a G |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
531 | |/| |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
532 | o | 5:24b6387c8c8c F |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
533 | | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
534 | | o 4:9520eea781bc E |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
535 | |/ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
536 o | 3:32af7686d403 D |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
537 | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
538 o | 2:5fddd98957c8 C |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
539 | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
540 o | 1:42ccdea3bb16 B |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
541 |/ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
542 o 0:cd010b8cd998 A |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
543 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
544 (actual test) |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
545 |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
546 $ hg rebase --dest 6 --rev '((desc(H) + desc(D))::) - desc(M)' |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
547 rebasing 3:32af7686d403 "D" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
548 rebasing 7:02de42196ebe "H" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23505
diff
changeset
|
549 rebasing 9:4bde274eefcf "I" (tip) |
18472
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
550 $ hg log -G |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
551 @ 12:acd174b7ab39 I |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
552 | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
553 o 11:6c11a6218c97 H |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
554 | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
555 | o 10:b5313c85b22e D |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
556 |/ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
557 | o 8:53a6a128b2b7 M |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
558 | |\ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
559 | | x 7:02de42196ebe H |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
560 | | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
561 o---+ 6:eea13746799a G |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
562 | | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
563 | | o 5:24b6387c8c8c F |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
564 | | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
565 o---+ 4:9520eea781bc E |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
566 / / |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
567 x | 3:32af7686d403 D |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
568 | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
569 o | 2:5fddd98957c8 C |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
570 | | |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
571 o | 1:42ccdea3bb16 B |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
572 |/ |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
573 o 0:cd010b8cd998 A |
37100f30590f
test-rebase: add another test for rebase with multiple roots
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
18447
diff
changeset
|
574 |
23970
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
575 |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
576 Test hidden changesets in the rebase set (issue4504) |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
577 |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
578 $ hg up --hidden 9 |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
579 3 files updated, 0 files merged, 1 files removed, 0 files unresolved |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
580 $ echo J > J |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
581 $ hg add J |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
582 $ hg commit -m J |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
583 $ hg debugobsolete `hg log --rev . -T '{node}'` |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33332
diff
changeset
|
584 obsoleted 1 changesets |
23970
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
585 |
28429
a47881680402
rebase: turn rebaseskipobsolete on by default
Kostia Balytskyi <ikostia@fb.com>
parents:
28280
diff
changeset
|
586 $ hg rebase --rev .~1::. --dest 'max(desc(D))' --traceback --config experimental.rebaseskipobsolete=off |
23970
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
587 rebasing 9:4bde274eefcf "I" |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
588 rebasing 13:06edfc82198f "J" (tip) |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
589 $ hg log -G |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
590 @ 15:5ae8a643467b J |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
591 | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
592 o 14:9ad579b4a5de I |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
593 | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
594 | o 12:acd174b7ab39 I |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
595 | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
596 | o 11:6c11a6218c97 H |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
597 | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
598 o | 10:b5313c85b22e D |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
599 |/ |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
600 | o 8:53a6a128b2b7 M |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
601 | |\ |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
602 | | x 7:02de42196ebe H |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
603 | | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
604 o---+ 6:eea13746799a G |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
605 | | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
606 | | o 5:24b6387c8c8c F |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
607 | | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
608 o---+ 4:9520eea781bc E |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
609 / / |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
610 x | 3:32af7686d403 D |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
611 | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
612 o | 2:5fddd98957c8 C |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
613 | | |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
614 o | 1:42ccdea3bb16 B |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
615 |/ |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
616 o 0:cd010b8cd998 A |
8a544fb645bb
rebase: ensure rebase revision remains visible (issue4504)
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
23518
diff
changeset
|
617 |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
618 $ hg up 14 -C |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
619 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
620 $ echo "K" > K |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
621 $ hg add K |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
622 $ hg commit --amend -m "K" |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
623 $ echo "L" > L |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
624 $ hg add L |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
625 $ hg commit -m "L" |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
626 $ hg up '.^' |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
627 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
628 $ echo "M" > M |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
629 $ hg add M |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
630 $ hg commit --amend -m "M" |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
631 $ hg log -G |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
632 @ 18:bfaedf8eb73b M |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
633 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
634 | o 17:97219452e4bd L |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
635 | | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
636 | x 16:fc37a630c901 K |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
637 |/ |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
638 | o 15:5ae8a643467b J |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
639 | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
640 | x 14:9ad579b4a5de I |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
641 |/ |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
642 | o 12:acd174b7ab39 I |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
643 | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
644 | o 11:6c11a6218c97 H |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
645 | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
646 o | 10:b5313c85b22e D |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
647 |/ |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
648 | o 8:53a6a128b2b7 M |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
649 | |\ |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
650 | | x 7:02de42196ebe H |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
651 | | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
652 o---+ 6:eea13746799a G |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
653 | | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
654 | | o 5:24b6387c8c8c F |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
655 | | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
656 o---+ 4:9520eea781bc E |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
657 / / |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
658 x | 3:32af7686d403 D |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
659 | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
660 o | 2:5fddd98957c8 C |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
661 | | |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
662 o | 1:42ccdea3bb16 B |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
663 |/ |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
664 o 0:cd010b8cd998 A |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
665 |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
666 $ hg rebase -s 14 -d 17 --config experimental.rebaseskipobsolete=True |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
667 note: not rebasing 14:9ad579b4a5de "I", already in destination as 16:fc37a630c901 "K" |
26349
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
668 rebasing 15:5ae8a643467b "J" |
92409f8dff5d
rebase: don't rebase obsolete commit whose successor is already rebased
Laurent Charignon <lcharignon@fb.com>
parents:
23970
diff
changeset
|
669 |
26675
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
670 $ cd .. |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
671 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
672 Skip obsolete changeset even with multiple hops |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
673 ----------------------------------------------- |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
674 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
675 setup |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
676 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
677 $ hg init obsskip |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
678 $ cd obsskip |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
679 $ cat << EOF >> .hg/hgrc |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
680 > [experimental] |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
681 > rebaseskipobsolete = True |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
682 > [extensions] |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
683 > strip = |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
684 > EOF |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
685 $ echo A > A |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
686 $ hg add A |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
687 $ hg commit -m A |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
688 $ echo B > B |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
689 $ hg add B |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
690 $ hg commit -m B0 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
691 $ hg commit --amend -m B1 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
692 $ hg commit --amend -m B2 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
693 $ hg up --hidden 'desc(B0)' |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
694 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
695 $ echo C > C |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
696 $ hg add C |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
697 $ hg commit -m C |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
698 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
699 Rebase finds its way in a chain of marker |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
700 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
701 $ hg rebase -d 'desc(B2)' |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
702 note: not rebasing 1:a8b11f55fb19 "B0", already in destination as 3:261e70097290 "B2" |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
703 rebasing 4:212cb178bcbb "C" (tip) |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
704 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
705 Even when the chain include missing node |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
706 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
707 $ hg up --hidden 'desc(B0)' |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
708 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
709 $ echo D > D |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
710 $ hg add D |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
711 $ hg commit -m D |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
712 $ hg --hidden strip -r 'desc(B1)' |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
713 saved backup bundle to $TESTTMP/obsskip/.hg/strip-backup/86f6414ccda7-b1c452ee-backup.hg (glob) |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
714 |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
715 $ hg rebase -d 'desc(B2)' |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
716 note: not rebasing 1:a8b11f55fb19 "B0", already in destination as 2:261e70097290 "B2" |
b73eb98c0243
rebase: properly handle chains of markers with missing nodes
Pierre-Yves David <pierre-yves.david@fb.com>
parents:
26349
diff
changeset
|
717 rebasing 5:1a79b7535141 "D" (tip) |
27012
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
718 $ hg up 4 |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
719 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
720 $ echo "O" > O |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
721 $ hg add O |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
722 $ hg commit -m O |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
723 $ echo "P" > P |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
724 $ hg add P |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
725 $ hg commit -m P |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
726 $ hg log -G |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
727 @ 8:8d47583e023f P |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
728 | |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
729 o 7:360bbaa7d3ce O |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
730 | |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
731 | o 6:9c48361117de D |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
732 | | |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
733 o | 4:ff2c4d47b71d C |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
734 |/ |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
735 o 2:261e70097290 B2 |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
736 | |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
737 o 0:4a2df7238c3b A |
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
738 |
34865
a0100f34e20b
config: replace experimental.stabilization by experimental.evolution
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
739 $ hg debugobsolete `hg log -r 7 -T '{node}\n'` --config experimental.evolution=true |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33332
diff
changeset
|
740 obsoleted 1 changesets |
27012
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
741 $ hg rebase -d 6 -r "4::" |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
742 rebasing 4:ff2c4d47b71d "C" |
33842
30573b3d2ebc
rebase: move obsoleted not rebased messages earlier (BC)
Jun Wu <quark@fb.com>
parents:
33789
diff
changeset
|
743 note: not rebasing 7:360bbaa7d3ce "O", it has no successor |
27012
5eac7ab59b95
rebase: don't rebase obsolete commits with no successor
Laurent Charignon <lcharignon@fb.com>
parents:
27011
diff
changeset
|
744 rebasing 8:8d47583e023f "P" (tip) |
27577
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
745 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
746 If all the changeset to be rebased are obsolete and present in the destination, we |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
747 should display a friendly error message |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
748 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
749 $ hg log -G |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
750 @ 10:121d9e3bc4c6 P |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
751 | |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
752 o 9:4be60e099a77 C |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
753 | |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
754 o 6:9c48361117de D |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
755 | |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
756 o 2:261e70097290 B2 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
757 | |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
758 o 0:4a2df7238c3b A |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
759 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
760 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
761 $ hg up 9 |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
762 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
763 $ echo "non-relevant change" > nonrelevant |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
764 $ hg add nonrelevant |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
765 $ hg commit -m nonrelevant |
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
766 created new head |
34865
a0100f34e20b
config: replace experimental.stabilization by experimental.evolution
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
767 $ hg debugobsolete `hg log -r 11 -T '{node}\n'` --config experimental.evolution=true |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33332
diff
changeset
|
768 obsoleted 1 changesets |
27577
f9e755736b0e
rebase: better error message when rebased changes are all in destination
Laurent Charignon <lcharignon@fb.com>
parents:
27147
diff
changeset
|
769 $ hg rebase -r . -d 10 |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
770 note: not rebasing 11:f44da1f4954c "nonrelevant" (tip), it has no successor |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
771 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
772 If a rebase is going to create divergence, it should abort |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
773 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
774 $ hg log -G |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
775 @ 10:121d9e3bc4c6 P |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
776 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
777 o 9:4be60e099a77 C |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
778 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
779 o 6:9c48361117de D |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
780 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
781 o 2:261e70097290 B2 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
782 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
783 o 0:4a2df7238c3b A |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
784 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
785 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
786 $ hg up 9 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
787 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
788 $ echo "john" > doe |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
789 $ hg add doe |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
790 $ hg commit -m "john doe" |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
791 created new head |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
792 $ hg up 10 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
793 1 files updated, 0 files merged, 1 files removed, 0 files unresolved |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
794 $ echo "foo" > bar |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
795 $ hg add bar |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
796 $ hg commit --amend -m "10'" |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
797 $ hg up 10 --hidden |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
798 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
799 $ echo "bar" > foo |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
800 $ hg add foo |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
801 $ hg commit -m "bar foo" |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
802 $ hg log -G |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
803 @ 14:73568ab6879d bar foo |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
804 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
805 | o 13:77d874d096a2 10' |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
806 | | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
807 | | o 12:3eb461388009 john doe |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
808 | |/ |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
809 x | 10:121d9e3bc4c6 P |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
810 |/ |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
811 o 9:4be60e099a77 C |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
812 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
813 o 6:9c48361117de D |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
814 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
815 o 2:261e70097290 B2 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
816 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
817 o 0:4a2df7238c3b A |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
818 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
819 $ hg summary |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
820 parent: 14:73568ab6879d tip (orphan) |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
821 bar foo |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
822 branch: default |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
823 commit: (clean) |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
824 update: 2 new changesets, 3 branch heads (merge) |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
825 phases: 8 draft |
33667
03039ff3082b
evolution: rename unstable to orphan
Boris Feld <boris.feld@octobus.net>
parents:
33542
diff
changeset
|
826 orphan: 1 changesets |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
827 $ hg rebase -s 10 -d 12 |
28188
6411140aeda9
rebase: add potential divergent commit hashes to error message (issue5086)
Kostia Balytskyi <ikostia@fb.com>
parents:
27974
diff
changeset
|
828 abort: this rebase will cause divergences from: 121d9e3bc4c6 |
34872
29f52e7966dd
config: gather allowdivergence under the evolution namespace
Boris Feld <boris.feld@octobus.net>
parents:
34870
diff
changeset
|
829 (to force the rebase please set experimental.evolution.allowdivergence=True) |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
830 [255] |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
831 $ hg log -G |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
832 @ 14:73568ab6879d bar foo |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
833 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
834 | o 13:77d874d096a2 10' |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
835 | | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
836 | | o 12:3eb461388009 john doe |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
837 | |/ |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
838 x | 10:121d9e3bc4c6 P |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
839 |/ |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
840 o 9:4be60e099a77 C |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
841 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
842 o 6:9c48361117de D |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
843 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
844 o 2:261e70097290 B2 |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
845 | |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
846 o 0:4a2df7238c3b A |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
847 |
34872
29f52e7966dd
config: gather allowdivergence under the evolution namespace
Boris Feld <boris.feld@octobus.net>
parents:
34870
diff
changeset
|
848 With experimental.evolution.allowdivergence=True, rebase can create divergence |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
849 |
34872
29f52e7966dd
config: gather allowdivergence under the evolution namespace
Boris Feld <boris.feld@octobus.net>
parents:
34870
diff
changeset
|
850 $ hg rebase -s 10 -d 12 --config experimental.evolution.allowdivergence=True |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
851 rebasing 10:121d9e3bc4c6 "P" |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
852 rebasing 14:73568ab6879d "bar foo" (tip) |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
853 $ hg summary |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
854 parent: 16:61bd55f69bc4 tip |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
855 bar foo |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
856 branch: default |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
857 commit: (clean) |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
858 update: 1 new changesets, 2 branch heads (merge) |
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
859 phases: 8 draft |
33688
2194a8723138
evolution: rename divergent to content-divergent
Boris Feld <boris.feld@octobus.net>
parents:
33678
diff
changeset
|
860 content-divergent: 2 changesets |
27746
f0e9f38d250f
rebase: prevent creating divergence
Laurent Charignon <lcharignon@fb.com>
parents:
27577
diff
changeset
|
861 |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
862 rebase --continue + skipped rev because their successors are in destination |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
863 we make a change in trunk and work on conflicting changes to make rebase abort. |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
864 |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
865 $ hg log -G -r 16:: |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
866 @ 16:61bd55f69bc4 bar foo |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
867 | |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
868 ~ |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
869 |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
870 Create the two changes in trunk |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
871 $ printf "a" > willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
872 $ hg add willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
873 $ hg commit -m "willconflict first version" |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
874 |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
875 $ printf "dummy" > C |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
876 $ hg commit -m "dummy change successor" |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
877 |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
878 Create the changes that we will rebase |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
879 $ hg update -C 16 -q |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
880 $ printf "b" > willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
881 $ hg add willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
882 $ hg commit -m "willconflict second version" |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
883 created new head |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
884 $ printf "dummy" > K |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
885 $ hg add K |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
886 $ hg commit -m "dummy change" |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
887 $ printf "dummy" > L |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
888 $ hg add L |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
889 $ hg commit -m "dummy change" |
34865
a0100f34e20b
config: replace experimental.stabilization by experimental.evolution
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
890 $ hg debugobsolete `hg log -r ".^" -T '{node}'` `hg log -r 18 -T '{node}'` --config experimental.evolution=true |
33542
b11e8c67fb0f
debugobsolete: also report the number of obsoleted changesets
Boris Feld <boris.feld@octobus.net>
parents:
33332
diff
changeset
|
891 obsoleted 1 changesets |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
892 |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
893 $ hg log -G -r 16:: |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
894 @ 21:7bdc8a87673d dummy change |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
895 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
896 x 20:8b31da3c4919 dummy change |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
897 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
898 o 19:b82fb57ea638 willconflict second version |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
899 | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
900 | o 18:601db7a18f51 dummy change successor |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
901 | | |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
902 | o 17:357ddf1602d5 willconflict first version |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
903 |/ |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
904 o 16:61bd55f69bc4 bar foo |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
905 | |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
906 ~ |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
907 $ hg rebase -r ".^^ + .^ + ." -d 18 |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
908 rebasing 19:b82fb57ea638 "willconflict second version" |
28686
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
909 merging willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
910 warning: conflicts while merging willconflict! (edit, then use 'hg resolve --mark') |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
911 unresolved conflicts (see hg resolve, then hg rebase --continue) |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
912 [1] |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
913 |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
914 $ hg resolve --mark willconflict |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
915 (no more unresolved files) |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
916 continue: hg rebase --continue |
b212e01fead0
rebase: fix crash when rebase aborts while rebasing obsolete revisions
Laurent Charignon <lcharignon@fb.com>
parents:
28429
diff
changeset
|
917 $ hg rebase --continue |
34085
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
918 rebasing 19:b82fb57ea638 "willconflict second version" |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
919 note: not rebasing 20:8b31da3c4919 "dummy change", already in destination as 18:601db7a18f51 "dummy change successor" |
e8a7c1a0565a
cmdutil: remove the redundant commit during amend
Saurabh Singh <singhsrb@fb.com>
parents:
34009
diff
changeset
|
920 rebasing 21:7bdc8a87673d "dummy change" (tip) |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
921 $ cd .. |
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
922 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
923 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
|
924 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
925 $ 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
|
926 $ cd p1-succ-is-dest |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
927 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
928 $ 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
|
929 > F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
930 > /| |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
931 > 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
|
932 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
933 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
934 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
935 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
936 $ hg rebase -d B -s D |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
937 note: not rebasing 2:b18e25de2cf5 "D" (D), already in destination as 1:112478962961 "B" (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
|
938 rebasing 4:66f1a38021c9 "F" (F tip) |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
939 $ 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
|
940 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
|
941 |\ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
942 | | x 4:66f1a38021c9 F |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
943 | |/| |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
944 | 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
|
945 | | | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
946 | | x 2:b18e25de2cf5 D |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
947 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
948 o | 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
949 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
950 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
|
951 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
952 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
953 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
954 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
|
955 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
956 $ 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
|
957 $ 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
|
958 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
959 $ 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
|
960 > F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
961 > /| |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
962 > 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
|
963 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
964 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
965 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
966 |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
967 $ hg rebase -d B -s E |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
968 note: not rebasing 3:7fb047a69f22 "E" (E), already in destination as 1:112478962961 "B" (B) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
969 rebasing 4:66f1a38021c9 "F" (F tip) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
970 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
971 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
|
972 |\ |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
973 | | x 4:66f1a38021c9 F |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
974 | |/| |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
975 | | x 3:7fb047a69f22 E |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
976 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
977 | o | 2:b18e25de2cf5 D |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
978 | |/ |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
979 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
|
980 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
981 o 0:426bada5c675 A |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
982 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
983 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
984 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
985 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
|
986 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
987 $ 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
|
988 $ 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
|
989 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
990 $ 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
|
991 > 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
|
992 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
993 > 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
|
994 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
995 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
996 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
997 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
998 $ hg rebase -d C -s D |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
999 note: not rebasing 2:b18e25de2cf5 "D" (D), already in destination as 1:112478962961 "B" (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
|
1000 rebasing 5:66f1a38021c9 "F" (F tip) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1001 |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1002 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1003 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
|
1004 |\ |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1005 +---x 5:66f1a38021c9 F |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1006 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1007 | 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
|
1008 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1009 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
|
1010 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1011 +---x 2:b18e25de2cf5 D |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1012 | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1013 | 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
|
1014 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1015 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
|
1016 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1017 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1018 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1019 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
|
1020 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1021 $ 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
|
1022 $ 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
|
1023 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1024 $ 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
|
1025 > 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
|
1026 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1027 > 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
|
1028 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1029 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1030 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1031 |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1032 $ hg rebase -d C -s E |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1033 note: not rebasing 3:7fb047a69f22 "E" (E), already in destination as 1:112478962961 "B" (B) |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1034 rebasing 5:66f1a38021c9 "F" (F tip) |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1035 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1036 o 6:c6ab0cc6d220 F |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1037 |\ |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1038 +---x 5:66f1a38021c9 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
|
1039 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1040 | 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
|
1041 | | | |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1042 | | x 3:7fb047a69f22 E |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1043 | | | |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1044 o---+ 2:b18e25de2cf5 D |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1045 / / |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1046 o / 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1047 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1048 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
|
1049 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1050 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1051 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1052 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
|
1053 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1054 $ 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
|
1055 $ 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
|
1056 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1057 $ 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
|
1058 > 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
|
1059 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1060 > 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
|
1061 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1062 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1063 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1064 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1065 $ hg rebase -d C -b F |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1066 rebasing 2:b18e25de2cf5 "D" (D) |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1067 note: not rebasing 3:7fb047a69f22 "E" (E), already in destination as 1:112478962961 "B" (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
|
1068 rebasing 5:66f1a38021c9 "F" (F tip) |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1069 note: rebase of 5:66f1a38021c9 created no changes to commit |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1070 $ 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
|
1071 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
|
1072 | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1073 | x 5:66f1a38021c9 F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1074 | |\ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1075 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
|
1076 | | | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1077 | | x 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
|
1078 | | | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1079 | x | 2:b18e25de2cf5 D |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1080 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1081 o / 1:112478962961 B |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1082 |/ |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1083 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
|
1084 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1085 $ cd .. |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1086 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1087 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
|
1088 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1089 $ 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
|
1090 $ 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
|
1091 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1092 $ 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
|
1093 > 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
|
1094 > /| | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1095 > 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
|
1096 > \|/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1097 > A |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1098 > EOF |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1099 |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1100 $ hg rebase -d C -b F |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1101 note: not rebasing 2:b18e25de2cf5 "D" (D), already in destination as 1:112478962961 "B" (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
|
1102 rebasing 3:7fb047a69f22 "E" (E) |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1103 rebasing 5:66f1a38021c9 "F" (F tip) |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1104 note: rebase of 5:66f1a38021c9 created no changes to commit |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1105 |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1106 $ hg log -G |
33786
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1107 o 6:533690786a86 E |
0975506120fb
rebase: rewrite core algorithm (issue5578) (issue5630)
Jun Wu <quark@fb.com>
parents:
33775
diff
changeset
|
1108 | |
33677
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1109 | x 5:66f1a38021c9 F |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1110 | |\ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1111 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
|
1112 | | | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1113 | | x 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
|
1114 | | | |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1115 | x | 2:b18e25de2cf5 D |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1116 | |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1117 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
|
1118 |/ |
644dddccc265
tests: demonstrate broken rebase of merge with p1's successor in dest
Martin von Zweigbergk <martinvonz@google.com>
parents:
33667
diff
changeset
|
1119 o 0:426bada5c675 A |
29063
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1120 |
8ede973597fd
rebase: handle successor targets (issue5198)
timeless <timeless@mozdev.org>
parents:
28686
diff
changeset
|
1121 $ cd .. |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1122 |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1123 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
|
1124 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1125 $ hg init p12-succ-in-dest |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1126 $ cd p12-succ-in-dest |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1127 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1128 > E F |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1129 > /| /| # replace: A -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1130 > A B C D # replace: B -> D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1131 > | | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1132 > X Y |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1133 > EOS |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1134 $ hg rebase -r A+B+E -d F |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1135 note: not rebasing 4:a3d17304151f "A" (A), already in destination as 0:96cc3511f894 "C" (C) |
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1136 note: not rebasing 5:b23a2cc00842 "B" (B), already in destination as 1:058c1e1fb10a "D" (D) |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1137 rebasing 7:dac5d11c5a7d "E" (E tip) |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1138 abort: rebasing 7:dac5d11c5a7d will include unwanted changes from 3:59c792af609c, 5:b23a2cc00842 or 2:ba2b7fa7166d, 4:a3d17304151f |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1139 [255] |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1140 $ cd .. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1141 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1142 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
|
1143 parent moves as requested. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1144 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1145 $ hg init p1-succ-p2-move |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1146 $ cd p1-succ-p2-move |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1147 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1148 > D Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1149 > /| | # replace: A -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1150 > A B C # D/D = D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1151 > EOS |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1152 $ hg rebase -r A+B+D -d Z |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1153 note: not rebasing 0:426bada5c675 "A" (A), already in destination as 2:96cc3511f894 "C" (C) |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1154 rebasing 1:fc2b737bb2e5 "B" (B) |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1155 rebasing 3:b8ed089c80ad "D" (D) |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1156 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1157 $ rm .hg/localtags |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1158 $ hg log -G |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1159 o 6:e4f78693cc88 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1160 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1161 o 5:76840d832e98 B |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1162 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1163 o 4:50e41c1f3950 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1164 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1165 o 2:96cc3511f894 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1166 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1167 $ hg files -r tip |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1168 B |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1169 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1170 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1171 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1172 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1173 $ cd .. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1174 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1175 $ hg init p1-move-p2-succ |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1176 $ cd p1-move-p2-succ |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1177 $ hg debugdrawdag <<'EOS' |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1178 > D Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1179 > /| | # replace: B -> C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1180 > A B C # D/D = D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1181 > EOS |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1182 $ hg rebase -r B+A+D -d Z |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1183 rebasing 0:426bada5c675 "A" (A) |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1184 note: not rebasing 1:fc2b737bb2e5 "B" (B), already in destination as 2:96cc3511f894 "C" (C) |
33863
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1185 rebasing 3:b8ed089c80ad "D" (D) |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1186 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1187 $ rm .hg/localtags |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1188 $ hg log -G |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1189 o 6:1b355ed94d82 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1190 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1191 o 5:a81a74d764a6 A |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1192 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1193 o 4:50e41c1f3950 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1194 | |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1195 o 2:96cc3511f894 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1196 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1197 $ hg files -r tip |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1198 A |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1199 C |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1200 D |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1201 Z |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1202 |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1203 $ cd .. |
3160876c6e4e
rebase: choose merge base without unwanted revisions
Jun Wu <quark@fb.com>
parents:
33844
diff
changeset
|
1204 |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1205 Test that bookmark is moved and working dir is updated when all changesets have |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1206 equivalents in destination |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1207 $ hg init rbsrepo && cd rbsrepo |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1208 $ echo "[experimental]" > .hg/hgrc |
34865
a0100f34e20b
config: replace experimental.stabilization by experimental.evolution
Boris Feld <boris.feld@octobus.net>
parents:
34661
diff
changeset
|
1209 $ echo "evolution=true" >> .hg/hgrc |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1210 $ echo "rebaseskipobsolete=on" >> .hg/hgrc |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1211 $ echo root > root && hg ci -Am root |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1212 adding root |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1213 $ echo a > a && hg ci -Am a |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1214 adding a |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1215 $ hg up 0 |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1216 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1217 $ echo b > b && hg ci -Am b |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1218 adding b |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1219 created new head |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1220 $ hg rebase -r 2 -d 1 |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1221 rebasing 2:1e9a3c00cbe9 "b" (tip) |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1222 $ hg log -r . # working dir is at rev 3 (successor of 2) |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1223 3:be1832deae9a b (no-eol) |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1224 $ hg book -r 2 mybook --hidden # rev 2 has a bookmark on it now |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1225 $ hg up 2 && hg log -r . # working dir is at rev 2 again |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1226 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1227 2:1e9a3c00cbe9 b (no-eol) |
34870
64f29fff1877
config: rename stabilization.track-operation
Boris Feld <boris.feld@octobus.net>
parents:
34867
diff
changeset
|
1228 $ hg rebase -r 2 -d 3 --config experimental.evolution.track-operation=1 |
34009
79ab5369d55a
rebase: use _ctxdesc in one more place
Jun Wu <quark@fb.com>
parents:
34008
diff
changeset
|
1229 note: not rebasing 2:1e9a3c00cbe9 "b" (mybook), already in destination as 3:be1832deae9a "b" (tip) |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1230 Check that working directory and bookmark was updated to rev 3 although rev 2 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1231 was skipped |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1232 $ hg log -r . |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1233 3:be1832deae9a b (no-eol) |
29372
0b5e9a625042
rebase: do not abort if all changesets have equivalents in the destination
Kostia Balytskyi <ikostia@fb.com>
parents:
29063
diff
changeset
|
1234 $ hg bookmarks |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1235 mybook 3:be1832deae9a |
32354
f432897a9f49
obsmarker: add an experimental flag controlling "operation" recording
Pierre-Yves David <pierre-yves.david@octobus.net>
parents:
32327
diff
changeset
|
1236 $ hg debugobsolete --rev tip |
34286
ecc96506c49d
obsmarker: track operation by default
Martin von Zweigbergk <martinvonz@google.com>
parents:
34093
diff
changeset
|
1237 1e9a3c00cbe90d236ac05ef61efcc5e40b7412bc be1832deae9ac531caa7438b8dcf6055a122cd8e 0 (Thu Jan 01 00:00:00 1970 +0000) {'operation': 'rebase', 'user': 'test'} |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1238 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1239 Obsoleted working parent and bookmark could be moved if an ancestor of working |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1240 parent gets moved: |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1241 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1242 $ hg init $TESTTMP/ancestor-wd-move |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1243 $ cd $TESTTMP/ancestor-wd-move |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1244 $ hg debugdrawdag <<'EOS' |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1245 > E D1 # rebase: D1 -> D2 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1246 > | | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1247 > | C |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1248 > D2 | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1249 > | B |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1250 > |/ |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1251 > A |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1252 > EOS |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1253 $ hg update D1 -q |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1254 $ hg bookmark book -i |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1255 $ hg rebase -r B+D1 -d E |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1256 rebasing 1:112478962961 "B" (B) |
34290
4f969b9e0cf5
rebase: also include other namespaces in changeset description
Martin von Zweigbergk <martinvonz@google.com>
parents:
34286
diff
changeset
|
1257 note: not rebasing 5:15ecf15e0114 "D1" (book D1 tip), already in destination as 2:0807738e0be9 "D2" (D2) |
34008
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1258 $ hg log -G -T '{desc} {bookmarks}' |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1259 @ B book |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1260 | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1261 | x D1 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1262 | | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1263 o | E |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1264 | | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1265 | o C |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1266 | | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1267 o | D2 |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1268 | | |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1269 | x B |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1270 |/ |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1271 o A |
9422107a6b64
rebase: move working parent and bookmark for obsoleted revs (BC)
Jun Wu <quark@fb.com>
parents:
33863
diff
changeset
|
1272 |
34092
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1273 Rebasing a merge with one of its parent having a hidden successor |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1274 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1275 $ hg init $TESTTMP/merge-p1-hidden-successor |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1276 $ cd $TESTTMP/merge-p1-hidden-successor |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1277 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1278 $ hg debugdrawdag <<'EOS' |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1279 > E |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1280 > | |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1281 > B3 B2 # amend: B1 -> B2 -> B3 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1282 > |/ # B2 is hidden |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1283 > | D |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1284 > | |\ |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1285 > | B1 C |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1286 > |/ |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1287 > A |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1288 > EOS |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1289 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1290 $ eval `hg tags -T '{tag}={node}\n'` |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1291 $ rm .hg/localtags |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1292 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1293 $ hg rebase -r $D -d $E |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1294 rebasing 5:9e62094e4d94 "D" |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1295 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1296 $ hg log -G |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1297 o 7:a699d059adcf D |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1298 |\ |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1299 | o 6:ecc93090a95c E |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1300 | | |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1301 | o 4:0dc878468a23 B3 |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1302 | | |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1303 o | 1:96cc3511f894 C |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1304 / |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1305 o 0:426bada5c675 A |
8a8e7a94ba07
rebase: do not crash rebasing merge with a parent having hidden successor
Jun Wu <quark@fb.com>
parents:
34085
diff
changeset
|
1306 |
34093
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1307 For some reasons (--hidden, rebaseskipobsolete=0, directaccess, etc.), |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1308 rebasestate may contain hidden hashes. "rebase --abort" should work regardless. |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1309 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1310 $ hg init $TESTTMP/hidden-state1 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1311 $ cd $TESTTMP/hidden-state1 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1312 $ cat >> .hg/hgrc <<EOF |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1313 > [experimental] |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1314 > rebaseskipobsolete=0 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1315 > EOF |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1316 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1317 $ hg debugdrawdag <<'EOS' |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1318 > C |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1319 > | |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1320 > D B # prune: B, C |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1321 > |/ # B/D=B |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1322 > A |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1323 > EOS |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1324 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1325 $ eval `hg tags -T '{tag}={node}\n'` |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1326 $ rm .hg/localtags |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1327 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1328 $ hg update -q $C --hidden |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1329 $ hg rebase -s $B -d $D |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1330 rebasing 1:2ec65233581b "B" |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1331 merging D |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1332 warning: conflicts while merging D! (edit, then use 'hg resolve --mark') |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1333 unresolved conflicts (see hg resolve, then hg rebase --continue) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1334 [1] |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1335 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1336 $ cp -R . $TESTTMP/hidden-state2 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1337 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1338 $ hg log -G |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1339 @ 2:b18e25de2cf5 D |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1340 | |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1341 | @ 1:2ec65233581b B |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1342 |/ |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1343 o 0:426bada5c675 A |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1344 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1345 $ hg summary |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1346 parent: 2:b18e25de2cf5 tip |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1347 D |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1348 parent: 1:2ec65233581b (obsolete) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1349 B |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1350 branch: default |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1351 commit: 2 modified, 1 unknown, 1 unresolved (merge) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1352 update: (current) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1353 phases: 3 draft |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1354 rebase: 0 rebased, 2 remaining (rebase --continue) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1355 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1356 $ hg rebase --abort |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1357 rebase aborted |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1358 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1359 Also test --continue for the above case |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1360 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1361 $ cd $TESTTMP/hidden-state2 |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1362 $ hg resolve -m |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1363 (no more unresolved files) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1364 continue: hg rebase --continue |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1365 $ hg rebase --continue |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1366 rebasing 1:2ec65233581b "B" |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1367 rebasing 3:7829726be4dc "C" (tip) |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1368 $ hg log -G |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1369 @ 5:1964d5d5b547 C |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1370 | |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1371 o 4:68deb90c12a2 B |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1372 | |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1373 o 2:b18e25de2cf5 D |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1374 | |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1375 o 0:426bada5c675 A |
15ec3119d500
rebase: use unfiltered repo when loading state
Jun Wu <quark@fb.com>
parents:
34092
diff
changeset
|
1376 |