Mercurial > hg > mercurial-source
annotate tests/test-histedit-fold.t @ 17242:336121088ef1 stable
histedit: fix new nodes computation with --continue (issue3534)
When running the following actions:
pick 617f94f13c0f 1 +4
drop 888f9082bf99 2 +5
fold 251d831eeec5 3 +6
if the fold fails, is fixed by the user with a new changeset, --continue
will ignore the new revision when generating the fold changelog. This
was caused by --continue detecting new changesets as descendants of the
parent not descendants of changesets in the initial list. In this case,
dropped changesets must be ignored.
Even with the computation fixed, the 'newchildren' list was always
emptied by the filtering loop and passed empty to finishfold().
Note that changesets dropped and recreated identically will still be
missed. This probably cannot be solved but is unlikely to happen.
Other things, like 'newchildren' having multiple heads, should be
checked as well.
author | Patrick Mezard <patrick@mezard.eu> |
---|---|
date | Wed, 25 Jul 2012 16:27:26 +0200 |
parents | 0a48f3d54543 |
children | d9626b91623a |
rev | line source |
---|---|
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
1 $ . "$TESTDIR/histedit-helpers.sh" |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
2 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
3 $ cat >> $HGRCPATH <<EOF |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
4 > [extensions] |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
5 > graphlog= |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
6 > histedit= |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
7 > EOF |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
8 |
17073
a79776f427b4
tests: make histedit pass on Windows MSYS
Mads Kiilerich <mads@kiilerich.com>
parents:
17072
diff
changeset
|
9 $ EDITED="$TESTTMP/editedhistory" |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
10 $ cat > $EDITED <<EOF |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
11 > pick e860deea161a e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
12 > pick 652413bf663e f |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
13 > fold 177f92b77385 c |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
14 > pick 055a42cdd887 d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
15 > EOF |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
16 $ initrepo () |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
17 > { |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
18 > hg init r |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
19 > cd r |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
20 > for x in a b c d e f ; do |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
21 > echo $x > $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
22 > hg add $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
23 > hg ci -m $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
24 > done |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
25 > } |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
26 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
27 $ initrepo |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
28 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
29 log before edit |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
30 $ hg log --graph |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
31 @ changeset: 5:652413bf663e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
32 | tag: tip |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
33 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
34 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
35 | summary: f |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
36 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
37 o changeset: 4:e860deea161a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
38 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
39 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
40 | summary: e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
41 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
42 o changeset: 3:055a42cdd887 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
43 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
44 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
45 | summary: d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
46 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
47 o changeset: 2:177f92b77385 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
48 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
49 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
50 | summary: c |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
51 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
52 o changeset: 1:d2ae7f538514 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
53 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
54 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
55 | summary: b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
56 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
57 o changeset: 0:cb9a9f314b8b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
58 user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
59 date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
60 summary: a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
61 |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
62 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
63 edit the history |
17072
5f2cacb715dc
tests: make histedit tests more resilient to filesystem variation
Mads Kiilerich <mads@kiilerich.com>
parents:
17071
diff
changeset
|
64 $ HGEDITOR="cat \"$EDITED\" > " hg histedit 177f92b77385 2>&1 | fixbundle |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
65 0 files updated, 0 files merged, 4 files removed, 0 files unresolved |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
66 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
67 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
68 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
69 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
70 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
71 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
72 log after edit |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
73 $ hg log --graph |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
74 @ changeset: 4:82b0c1ff1777 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
75 | tag: tip |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
76 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
77 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
78 | summary: d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
79 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
80 o changeset: 3:150aafb44a91 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
81 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
82 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
83 | summary: pick e860deea161a e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
84 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
85 o changeset: 2:493dc0964412 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
86 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
87 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
88 | summary: e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
89 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
90 o changeset: 1:d2ae7f538514 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
91 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
92 | date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
93 | summary: b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
94 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
95 o changeset: 0:cb9a9f314b8b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
96 user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
97 date: Thu Jan 01 00:00:00 1970 +0000 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
98 summary: a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
99 |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
100 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
101 post-fold manifest |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
102 $ hg manifest |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
103 a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
104 b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
105 c |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
106 d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
107 e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
108 f |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
109 |
17071
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
110 $ cd .. |
17137
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
111 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
112 folding and creating no new change doesn't break: |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
113 $ mkdir fold-to-empty-test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
114 $ cd fold-to-empty-test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
115 $ hg init |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
116 $ printf "1\n2\n3\n" > file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
117 $ hg add file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
118 $ hg commit -m '1+2+3' |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
119 $ echo 4 >> file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
120 $ hg commit -m '+4' |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
121 $ echo 5 >> file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
122 $ hg commit -m '+5' |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
123 $ echo 6 >> file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
124 $ hg commit -m '+6' |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
125 $ hg log --graph |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
126 @ changeset: 3:251d831eeec5 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
127 | tag: tip |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
128 | user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
129 | date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
130 | summary: +6 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
131 | |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
132 o changeset: 2:888f9082bf99 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
133 | user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
134 | date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
135 | summary: +5 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
136 | |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
137 o changeset: 1:617f94f13c0f |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
138 | user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
139 | date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
140 | summary: +4 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
141 | |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
142 o changeset: 0:0189ba417d34 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
143 user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
144 date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
145 summary: 1+2+3 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
146 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
147 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
148 $ cat > editor.py <<EOF |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
149 > import re, sys |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
150 > rules = sys.argv[1] |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
151 > data = open(rules).read() |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
152 > data = re.sub(r'pick ([0-9a-f]{12} 2 \+5)', r'drop \1', data) |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
153 > data = re.sub(r'pick ([0-9a-f]{12} 2 \+6)', r'fold \1', data) |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
154 > open(rules, 'w').write(data) |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
155 > EOF |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
156 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
157 $ HGEDITOR='python editor.py' hg histedit 1 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
158 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
159 patching file file |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
160 Hunk #1 FAILED at 2 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
161 1 out of 1 hunks FAILED -- saving rejects to file file.rej |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
162 abort: Fix up the change and run hg histedit --continue |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
163 [255] |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
164 There were conflicts, but we'll continue without resolving. This |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
165 should effectively drop the changes from +6. |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
166 $ hg status |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
167 ? editor.py |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
168 ? file.rej |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
169 $ hg histedit --continue |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
170 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
171 saved backup bundle to $TESTTMP/*-backup.hg (glob) |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
172 $ hg log --graph |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
173 @ changeset: 1:617f94f13c0f |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
174 | tag: tip |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
175 | user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
176 | date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
177 | summary: +4 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
178 | |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
179 o changeset: 0:0189ba417d34 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
180 user: test |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
181 date: Thu Jan 01 00:00:00 1970 +0000 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
182 summary: 1+2+3 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
183 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
184 |
0a48f3d54543
histedit: don't crash if the result of fixing up a fold is empty
Augie Fackler <raf@durin42.com>
parents:
17073
diff
changeset
|
185 $ cd .. |
17242
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
186 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
187 Test corner case where folded revision is separated from its parent by a |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
188 dropped revision. |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
189 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
190 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
191 $ hg init fold-with-dropped |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
192 $ cd fold-with-dropped |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
193 $ printf "1\n2\n3\n" > file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
194 $ hg commit -Am '1+2+3' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
195 adding file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
196 $ echo 4 >> file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
197 $ hg commit -m '+4' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
198 $ echo 5 >> file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
199 $ hg commit -m '+5' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
200 $ echo 6 >> file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
201 $ hg commit -m '+6' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
202 $ hg log -G --template '{rev}:{node|short} {desc|firstline}\n' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
203 @ 3:251d831eeec5 +6 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
204 | |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
205 o 2:888f9082bf99 +5 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
206 | |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
207 o 1:617f94f13c0f +4 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
208 | |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
209 o 0:0189ba417d34 1+2+3 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
210 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
211 $ EDITED=`pwd`/../editcommands |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
212 $ cat > $EDITED <<EOF |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
213 > pick 617f94f13c0f 1 +4 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
214 > drop 888f9082bf99 2 +5 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
215 > fold 251d831eeec5 3 +6 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
216 > EOF |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
217 $ HGEDITOR="cat $EDITED >" hg histedit 1 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
218 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
219 patching file file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
220 Hunk #1 FAILED at 2 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
221 1 out of 1 hunks FAILED -- saving rejects to file file.rej |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
222 abort: Fix up the change and run hg histedit --continue |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
223 [255] |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
224 $ echo 5 >> file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
225 $ hg commit -m '+5.2' |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
226 created new head |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
227 $ echo 6 >> file |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
228 $ HGEDITOR=cat hg histedit --continue |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
229 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
230 +4 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
231 *** |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
232 +5.2 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
233 *** |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
234 +6 |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
235 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
236 saved backup bundle to $TESTTMP/fold-with-dropped/.hg/strip-backup/617f94f13c0f-backup.hg (glob) |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
237 $ cd .. |
336121088ef1
histedit: fix new nodes computation with --continue (issue3534)
Patrick Mezard <patrick@mezard.eu>
parents:
17137
diff
changeset
|
238 |