Mercurial > hg
annotate tests/test-rebase-abort.t @ 28663:ae279d4a19e9 stable 3.7.3
convert: test for shell injection in git calls (SEC)
CVE-2016-3069 (5/5)
Before recent refactoring we were not escaping calls to git at all
which made such injections possible. Let's have a test for that to
avoid this problem in the future. Reported by Blake Burkhart.
author | Mateusz Kwapich <mitrandir@fb.com> |
---|---|
date | Tue, 22 Mar 2016 17:27:27 -0700 |
parents | 61f4d59e9a0b |
children | a036e1ae1fbe |
rev | line source |
---|---|
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
1 $ cat >> $HGRCPATH <<EOF |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
2 > [extensions] |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
3 > rebase= |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
4 > |
15742
65df60a3f96b
phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15501
diff
changeset
|
5 > [phases] |
65df60a3f96b
phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15501
diff
changeset
|
6 > publish=False |
65df60a3f96b
phases: prevent rebase to rebase immutable changeset.
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
15501
diff
changeset
|
7 > |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
8 > [alias] |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
9 > tglog = log -G --template "{rev}:{phase} '{desc}' {branches}\n" |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
10 > EOF |
11198
b345b1cc124f
rebase: use helpers.sh in tests
Matt Mackall <mpm@selenic.com>
parents:
8168
diff
changeset
|
11 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
12 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
13 $ hg init a |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
14 $ cd a |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
15 |
20327
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
16 $ touch .hg/rebasestate |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
17 $ hg sum |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
18 parent: -1:000000000000 tip (empty repository) |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
19 branch: default |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
20 commit: (clean) |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
21 update: (current) |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
22 abort: .hg/rebasestate is incomplete |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
23 [255] |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
24 $ rm .hg/rebasestate |
46c2331fc750
rebase: abort cleanly when we encounter a damaged rebasestate (issue4155)
Matt Mackall <mpm@selenic.com>
parents:
20313
diff
changeset
|
25 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
26 $ echo c1 > common |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
27 $ hg add common |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
28 $ hg ci -m C1 |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
29 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
30 $ echo c2 >> common |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
31 $ hg ci -m C2 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
32 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
33 $ echo c3 >> common |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
34 $ hg ci -m C3 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
35 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
36 $ hg up -q -C 1 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
37 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
38 $ echo l1 >> extra |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
39 $ hg add extra |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
40 $ hg ci -m L1 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
41 created new head |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
42 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
43 $ sed -e 's/c2/l2/' common > common.new |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
44 $ mv common.new common |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
45 $ hg ci -m L2 |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
46 |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
47 $ hg phase --force --secret 2 |
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
48 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
49 $ hg tglog |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
50 @ 4:draft 'L2' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
51 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
52 o 3:draft 'L1' |
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
53 | |
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
54 | o 2:secret 'C3' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
55 |/ |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
56 o 1:draft 'C2' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
57 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
58 o 0:draft 'C1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
59 |
11316
7fa3968004c1
rebase: --abort doesn't strip away the target changeset (issue2220)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
11208
diff
changeset
|
60 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
61 Conflicting rebase: |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
62 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
63 $ hg rebase -s 3 -d 2 |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
64 rebasing 3:3163e20567cc "L1" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
65 rebasing 4:46f0b057b5c0 "L2" (tip) |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
66 merging common |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
25382
diff
changeset
|
67 warning: conflicts while merging common! (edit, then use 'hg resolve --mark') |
18933
42b620fc89e2
rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents:
17477
diff
changeset
|
68 unresolved conflicts (see hg resolve, then hg rebase --continue) |
18935
e5d9441ec281
dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents:
18933
diff
changeset
|
69 [1] |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
70 |
27027
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
71 Insert unsupported advisory merge record: |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
72 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
73 $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -x |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
74 $ hg debugmergestate |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
75 * version 2 records |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
76 local: 3e046f2ecedb793b97ed32108086edd1a162f8bc |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
77 other: 46f0b057b5c061d276b91491c22151f78698abd2 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
78 unrecognized entry: x advisory record |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
79 file: common (record type "F", state "u", hash 94c8c21d08740f5da9eaa38d1f175c592692f0d1) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
80 local path: common (flags "") |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
81 ancestor path: common (node de0a666fdd9c1a0b0698b90d85064d8bd34f74b6) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
82 other path: common (node 2f6411de53677f6f1048fef5bf888d67a342e0a5) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
83 $ hg resolve -l |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
84 U common |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
85 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
86 Insert unsupported mandatory merge record: |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
87 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
88 $ hg --config extensions.fakemergerecord=$TESTDIR/fakemergerecord.py fakemergerecord -X |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
89 $ hg debugmergestate |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
90 * version 2 records |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
91 local: 3e046f2ecedb793b97ed32108086edd1a162f8bc |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
92 other: 46f0b057b5c061d276b91491c22151f78698abd2 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
93 file: common (record type "F", state "u", hash 94c8c21d08740f5da9eaa38d1f175c592692f0d1) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
94 local path: common (flags "") |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
95 ancestor path: common (node de0a666fdd9c1a0b0698b90d85064d8bd34f74b6) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
96 other path: common (node 2f6411de53677f6f1048fef5bf888d67a342e0a5) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
97 unrecognized entry: X mandatory record |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
98 $ hg resolve -l |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
99 abort: unsupported merge state records: X |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
100 (see https://mercurial-scm.org/wiki/MergeStateRecords for more information) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
101 [255] |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
102 $ hg resolve -ma |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
103 abort: unsupported merge state records: X |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
104 (see https://mercurial-scm.org/wiki/MergeStateRecords for more information) |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
105 [255] |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
106 |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
107 Abort (should clear out unsupported merge state): |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
108 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
109 $ hg rebase --abort |
23835
aa4a1672583e
bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents:
23518
diff
changeset
|
110 saved backup bundle to $TESTTMP/a/.hg/strip-backup/3e046f2ecedb-6beef7d5-backup.hg (glob) |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
111 rebase aborted |
27027
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
112 $ hg debugmergestate |
a01ecbcfaf84
mergestate: handle additional record types specially
Siddharth Agarwal <sid0@fb.com>
parents:
26677
diff
changeset
|
113 no merge state found |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
114 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
115 $ hg tglog |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
116 @ 4:draft 'L2' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
117 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
118 o 3:draft 'L1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
119 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
120 | o 2:secret 'C3' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
121 |/ |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
122 o 1:draft 'C2' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
123 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
124 o 0:draft 'C1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
125 |
19848
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
126 Test safety for inconsistent rebase state, which may be created (and |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
127 forgotten) by Mercurial earlier than 2.7. This emulates Mercurial |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
128 earlier than 2.7 by renaming ".hg/rebasestate" temporarily. |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
129 |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
130 $ hg rebase -s 3 -d 2 |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
131 rebasing 3:3163e20567cc "L1" |
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
132 rebasing 4:46f0b057b5c0 "L2" (tip) |
19848
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
133 merging common |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
25382
diff
changeset
|
134 warning: conflicts while merging common! (edit, then use 'hg resolve --mark') |
19848
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
135 unresolved conflicts (see hg resolve, then hg rebase --continue) |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
136 [1] |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
137 |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
138 $ mv .hg/rebasestate .hg/rebasestate.back |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
139 $ hg update --quiet --clean 2 |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
140 $ hg --config extensions.mq= strip --quiet "destination()" |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
141 $ mv .hg/rebasestate.back .hg/rebasestate |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
142 |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
143 $ hg rebase --continue |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
144 abort: cannot continue inconsistent rebase |
20313
dcd65ce87260
hgext: fix one typo in rebase
Simon Heimberg <simohe@besonet.ch>
parents:
20117
diff
changeset
|
145 (use "hg rebase --abort" to clear broken state) |
19848
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
146 [255] |
19849
e7fa36d2ad3a
rebase: catch RepoLookupError at restoring rebase state for summary
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
19848
diff
changeset
|
147 $ hg summary | grep '^rebase: ' |
e7fa36d2ad3a
rebase: catch RepoLookupError at restoring rebase state for summary
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
19848
diff
changeset
|
148 rebase: (use "hg rebase --abort" to clear broken state) |
19848
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
149 $ hg rebase --abort |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
150 rebase aborted (no revision is removed, only broken state is cleared) |
577f4c562d52
rebase: catch RepoLookupError at restoring rebase state for abort/continue
FUJIWARA Katsunori <foozy@lares.dti.ne.jp>
parents:
18935
diff
changeset
|
151 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
152 $ cd .. |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
153 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
154 |
17477 | 155 Construct new repo: |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
156 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
157 $ hg init b |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
158 $ cd b |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
159 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
160 $ echo a > a |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
161 $ hg ci -Am A |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
162 adding a |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
163 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
164 $ echo b > b |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
165 $ hg ci -Am B |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
166 adding b |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
167 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
168 $ echo c > c |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
169 $ hg ci -Am C |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
170 adding c |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
171 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
172 $ hg up -q 0 |
11316
7fa3968004c1
rebase: --abort doesn't strip away the target changeset (issue2220)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
11208
diff
changeset
|
173 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
174 $ echo b > b |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
175 $ hg ci -Am 'B bis' |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
176 adding b |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
177 created new head |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
178 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
179 $ echo c1 > c |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
180 $ hg ci -Am C1 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
181 adding c |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
182 |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
183 $ hg phase --force --secret 1 |
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
184 $ hg phase --public 1 |
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
185 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
186 Rebase and abort without generating new changesets: |
6906
808f03f61ebe
Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff
changeset
|
187 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
188 $ hg tglog |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
189 @ 4:draft 'C1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
190 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
191 o 3:draft 'B bis' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
192 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
193 | o 2:secret 'C' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
194 | | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
195 | o 1:public 'B' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
196 |/ |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
197 o 0:public 'A' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
198 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
199 $ hg rebase -b 4 -d 2 |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
200 rebasing 3:a6484957d6b9 "B bis" |
23518
2fb0504b8175
rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents:
23517
diff
changeset
|
201 note: rebase of 3:a6484957d6b9 created no changes to commit |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
202 rebasing 4:145842775fec "C1" (tip) |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
203 merging c |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
25382
diff
changeset
|
204 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') |
18933
42b620fc89e2
rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents:
17477
diff
changeset
|
205 unresolved conflicts (see hg resolve, then hg rebase --continue) |
18935
e5d9441ec281
dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents:
18933
diff
changeset
|
206 [1] |
11316
7fa3968004c1
rebase: --abort doesn't strip away the target changeset (issue2220)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
11208
diff
changeset
|
207 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
208 $ hg tglog |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
209 @ 4:draft 'C1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
210 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
211 o 3:draft 'B bis' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
212 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
213 | @ 2:secret 'C' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
214 | | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
215 | o 1:public 'B' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
216 |/ |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
217 o 0:public 'A' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
218 |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
219 $ hg rebase -a |
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
220 rebase aborted |
11316
7fa3968004c1
rebase: --abort doesn't strip away the target changeset (issue2220)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
11208
diff
changeset
|
221 |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
222 $ hg tglog |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
223 @ 4:draft 'C1' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
224 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
225 o 3:draft 'B bis' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
226 | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
227 | o 2:secret 'C' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
228 | | |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
229 | o 1:public 'B' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
230 |/ |
15917
e66084ef8449
rebase: fix phases movement
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
parents:
15742
diff
changeset
|
231 o 0:public 'A' |
12608
16b854cb80f1
tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents:
11316
diff
changeset
|
232 |
16913
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15917
diff
changeset
|
233 |
f2719b387380
tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents:
15917
diff
changeset
|
234 $ cd .. |
19984
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
235 |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
236 rebase abort should not leave working copy in a merge state if tip-1 is public |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
237 (issue4082) |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
238 |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
239 $ hg init abortpublic |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
240 $ cd abortpublic |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
241 $ echo a > a && hg ci -Aqm a |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
242 $ hg book master |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
243 $ hg book foo |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
244 $ echo b > b && hg ci -Aqm b |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
245 $ hg up -q master |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
246 $ echo c > c && hg ci -Aqm c |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
247 $ hg phase -p -r . |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
248 $ hg up -q foo |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
249 $ echo C > c && hg ci -Aqm C |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
250 $ hg log -G --template "{rev} {desc} {bookmarks}" |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
251 @ 3 C foo |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
252 | |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
253 | o 2 c master |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
254 | | |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
255 o | 1 b |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
256 |/ |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
257 o 0 a |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
258 |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
259 |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
260 $ hg rebase -d master -r foo |
23517
4f18e80d9c30
rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents:
23516
diff
changeset
|
261 rebasing 3:6c0f977a22d8 "C" (tip foo) |
19984
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
262 merging c |
26614
ef1eb6df7071
simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents:
25382
diff
changeset
|
263 warning: conflicts while merging c! (edit, then use 'hg resolve --mark') |
19984
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
264 unresolved conflicts (see hg resolve, then hg rebase --continue) |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
265 [1] |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
266 $ hg rebase --abort |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
267 rebase aborted |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
268 $ hg log -G --template "{rev} {desc} {bookmarks}" |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
269 @ 3 C foo |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
270 | |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
271 | o 2 c master |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
272 | | |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
273 o | 1 b |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
274 |/ |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
275 o 0 a |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
276 |
7d5e7799a29f
rebase: fix rebase aborts when 'tip-1' is public (issue4082)
Durham Goode <durham@fb.com>
parents:
19849
diff
changeset
|
277 $ cd .. |
25069
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
278 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
279 Make sure we don't clobber changes in the working directory when the |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
280 user has somehow managed to update to a different revision (issue4009) |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
281 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
282 $ hg init noupdate |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
283 $ cd noupdate |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
284 $ hg book @ |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
285 $ echo original > a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
286 $ hg add a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
287 $ hg commit -m a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
288 $ echo x > b |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
289 $ hg add b |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
290 $ hg commit -m b1 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
291 $ hg up 0 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
292 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
293 (leaving bookmark @) |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
294 $ hg book foo |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
295 $ echo y > b |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
296 $ hg add b |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
297 $ hg commit -m b2 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
298 created new head |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
299 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
300 $ hg rebase -d @ -b foo --tool=internal:fail |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
301 rebasing 2:070cf4580bb5 "b2" (tip foo) |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
302 unresolved conflicts (see hg resolve, then hg rebase --continue) |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
303 [1] |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
304 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
305 $ mv .hg/rebasestate ./ # so we're allowed to hg up like in mercurial <2.6.3 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
306 $ hg up -C 0 # user does other stuff in the repo |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
307 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
308 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
309 $ mv rebasestate .hg/ # user upgrades to 2.7 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
310 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
311 $ echo new > a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
312 $ hg up 1 # user gets an error saying to run hg rebase --abort |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
313 abort: rebase in progress |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
314 (use 'hg rebase --continue' or 'hg rebase --abort') |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
315 [255] |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
316 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
317 $ cat a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
318 new |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
319 $ hg rebase --abort |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
320 rebase aborted |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
321 $ cat a |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
322 new |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
323 |
01ad8daae5be
test-rebase-abort: add test from issue4009
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
23835
diff
changeset
|
324 $ cd .. |
25070
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
325 |
27988
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
326 test aborting an interrupted series (issue5084) |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
327 $ hg init interrupted |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
328 $ cd interrupted |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
329 $ touch base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
330 $ hg add base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
331 $ hg commit -m base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
332 $ touch a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
333 $ hg add a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
334 $ hg commit -m a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
335 $ echo 1 > a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
336 $ hg commit -m 1 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
337 $ touch b |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
338 $ hg add b |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
339 $ hg commit -m b |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
340 $ echo 2 >> a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
341 $ hg commit -m c |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
342 $ touch d |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
343 $ hg add d |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
344 $ hg commit -m d |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
345 $ hg co -q 1 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
346 $ hg rm a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
347 $ hg commit -m no-a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
348 created new head |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
349 $ hg co 0 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
350 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
351 $ hg log -G --template "{rev} {desc} {bookmarks}" |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
352 o 6 no-a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
353 | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
354 | o 5 d |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
355 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
356 | o 4 c |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
357 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
358 | o 3 b |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
359 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
360 | o 2 1 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
361 |/ |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
362 o 1 a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
363 | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
364 @ 0 base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
365 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
366 $ hg --config extensions.n=$TESTDIR/failfilemerge.py rebase -s 3 -d tip |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
367 rebasing 3:3a71550954f1 "b" |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
368 rebasing 4:e80b69427d80 "c" |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
369 abort: ^C |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
370 [255] |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
371 $ hg rebase --abort |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
372 saved backup bundle to $TESTTMP/interrupted/.hg/strip-backup/3d8812cf300d-93041a90-backup.hg (glob) |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
373 rebase aborted |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
374 $ hg log -G --template "{rev} {desc} {bookmarks}" |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
375 o 6 no-a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
376 | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
377 | o 5 d |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
378 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
379 | o 4 c |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
380 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
381 | o 3 b |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
382 | | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
383 | o 2 1 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
384 |/ |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
385 o 1 a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
386 | |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
387 @ 0 base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
388 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
389 $ hg summary |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
390 parent: 0:df4f53cec30a |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
391 base |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
392 branch: default |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
393 commit: (clean) |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
394 update: 6 new changesets (update) |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
395 phases: 7 draft |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
396 |
61f4d59e9a0b
rebase: update working directory when aborting (issue5084)
timeless <timeless@mozdev.org>
parents:
27027
diff
changeset
|
397 $ cd .. |
25070
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
398 On the other hand, make sure we *do* clobber changes whenever we |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
399 haven't somehow managed to update the repo to a different revision |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
400 during a rebase (issue4661) |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
401 |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
402 $ hg ini yesupdate |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
403 $ cd yesupdate |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
404 $ echo "initial data" > foo.txt |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
405 $ hg add |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
406 adding foo.txt |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
407 $ hg ci -m "initial checkin" |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
408 $ echo "change 1" > foo.txt |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
409 $ hg ci -m "change 1" |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
410 $ hg up 0 |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
411 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
412 $ echo "conflicting change 1" > foo.txt |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
413 $ hg ci -m "conflicting 1" |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
414 created new head |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
415 $ echo "conflicting change 2" > foo.txt |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
416 $ hg ci -m "conflicting 2" |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
417 |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
418 $ hg rebase -d 1 --tool 'internal:fail' |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
419 rebasing 2:e4ea5cdc9789 "conflicting 1" |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
420 unresolved conflicts (see hg resolve, then hg rebase --continue) |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
421 [1] |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
422 $ hg rebase --abort |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
423 rebase aborted |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
424 $ hg summary |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
425 parent: 3:b16646383533 tip |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
426 conflicting 2 |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
427 branch: default |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
428 commit: (clean) |
bd98d073a34f
rebase: clear merge when aborting before any rebasing (issue4661)
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
25069
diff
changeset
|
429 update: 1 new changesets, 2 branch heads (merge) |
25382
6084926366b9
summary: move the parents phase marker to commit line (issue4688)
Gilles Moris <gilles.moris@free.fr>
parents:
25111
diff
changeset
|
430 phases: 4 draft |
26677
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
431 |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
432 test aborting a rebase succeeds after rebasing with skipped commits onto a |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
433 public changeset (issue4896) |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
434 |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
435 $ hg init succeedonpublic |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
436 $ cd succeedonpublic |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
437 $ echo 'content' > root |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
438 $ hg commit -A -m 'root' -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
439 |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
440 set up public branch |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
441 $ echo 'content' > disappear |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
442 $ hg commit -A -m 'disappear public' -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
443 commit will cause merge conflict on rebase |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
444 $ echo '' > root |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
445 $ hg commit -m 'remove content public' -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
446 $ hg phase --public |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
447 |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
448 setup the draft branch that will be rebased onto public commit |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
449 $ hg up -r 0 -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
450 $ echo 'content' > disappear |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
451 commit will disappear |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
452 $ hg commit -A -m 'disappear draft' -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
453 $ echo 'addedcontADDEDentadded' > root |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
454 commit will cause merge conflict on rebase |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
455 $ hg commit -m 'add content draft' -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
456 |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
457 $ hg rebase -d 'public()' --tool :merge -q |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
458 note: rebase of 3:0682fd3dabf5 created no changes to commit |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
459 warning: conflicts while merging root! (edit, then use 'hg resolve --mark') |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
460 unresolved conflicts (see hg resolve, then hg rebase --continue) |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
461 [1] |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
462 $ hg rebase --abort |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
463 rebase aborted |
e9b3d523f2e6
rebase: properly abort when destination is public (issue4896)
Christian Delahousse <cdelahousse@fb.com>
parents:
26614
diff
changeset
|
464 |