Mercurial > hg
annotate tests/test-histedit-non-commute-abort.t @ 25591:f1d46075b13a
verify: check the subrepository references in .hgsubstate
While hopefully atypical, there are reasons that a subrepository revision can be
lost that aren't covered by corruption of the .hgsubstate revlog. Such things
can happen when a subrepo is amended, stripped or simply isn't pulled from
upstream because the parent repo revision wasn't updated yet. There's no way to
know if it is an error, but this will find potential problems sooner than when
some random revision is updated.
Until recently, convert made no attempt at rewriting the .hgsubstate file. The
impetuous for this is to verify the conversion of some repositories, and this is
orders of magnitude faster than a bash script from 0..tip that does an
'hg update -C $rev'. But it is equally useful to determine if everything has
been pulled down before taking a thumb drive on the go.
It feels somewhat wrong to leave this out of verifymod (mostly because the file
is already read in there, and the final summary is printed before the subrepos
are checked). But verifymod looks very low level, so importing subrepo stuff
there seems more wrong.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Tue, 16 Jun 2015 16:15:15 -0400 |
parents | a8e6897dffbe |
children | ef1eb6df7071 |
rev | line source |
---|---|
17085
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 |
17085
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 > histedit= |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
6 > EOF |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
7 |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
8 $ initrepo () |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
9 > { |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
10 > hg init r |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
11 > cd r |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
12 > 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
|
13 > echo $x > $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
14 > hg add $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
15 > hg ci -m $x |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
16 > done |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
17 > echo a >> e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
18 > hg ci -m 'does not commute with e' |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
19 > cd .. |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
20 > } |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
21 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
22 $ initrepo |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
23 $ cd r |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
24 |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
25 log before edit |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
26 $ hg log --graph |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
27 @ changeset: 6:bfa474341cc9 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
28 | tag: tip |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
29 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
30 | 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
|
31 | summary: does not commute with e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
32 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
33 o changeset: 5:652413bf663e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
34 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
35 | 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
|
36 | summary: f |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
37 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
38 o changeset: 4:e860deea161a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
39 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
40 | 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
|
41 | summary: e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
42 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
43 o changeset: 3:055a42cdd887 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
44 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
45 | 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
|
46 | summary: d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
47 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
48 o changeset: 2:177f92b77385 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
49 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
50 | 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
|
51 | summary: c |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
52 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
53 o changeset: 1:d2ae7f538514 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
54 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
55 | 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
|
56 | summary: b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
57 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
58 o changeset: 0:cb9a9f314b8b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
59 user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
60 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
|
61 summary: a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
62 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
63 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
64 edit the history |
19019
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
65 $ hg histedit 177f92b77385 --commands - 2>&1 <<EOF | fixbundle |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
66 > pick 177f92b77385 c |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
67 > pick 055a42cdd887 d |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
68 > pick bfa474341cc9 does not commute with e |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
69 > pick e860deea161a e |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
70 > pick 652413bf663e f |
53060cc1b601
histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
18934
diff
changeset
|
71 > EOF |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
72 0 files updated, 0 files merged, 2 files removed, 0 files unresolved |
17647
d34ba4991188
histedit: replaces patching logic by merges
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17087
diff
changeset
|
73 0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
d34ba4991188
histedit: replaces patching logic by merges
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17087
diff
changeset
|
74 merging e |
d34ba4991188
histedit: replaces patching logic by merges
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17087
diff
changeset
|
75 warning: conflicts during merge. |
d34ba4991188
histedit: replaces patching logic by merges
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17087
diff
changeset
|
76 merging e incomplete! (edit conflicts, then use 'hg resolve --mark') |
18934
93f3a06b2035
histedit: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents:
17647
diff
changeset
|
77 Fix up the change and run hg histedit --continue |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
78 |
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
79 |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
80 abort the edit |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
81 $ hg histedit --abort 2>&1 | fixbundle |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
82 2 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
|
83 |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
84 log after abort |
17647
d34ba4991188
histedit: replaces patching logic by merges
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents:
17087
diff
changeset
|
85 $ hg resolve -l |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
86 $ hg log --graph |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
87 @ changeset: 6:bfa474341cc9 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
88 | tag: tip |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
89 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
90 | 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
|
91 | summary: does not commute with e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
92 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
93 o changeset: 5:652413bf663e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
94 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
95 | 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
|
96 | summary: f |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
97 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
98 o changeset: 4:e860deea161a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
99 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
100 | 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
|
101 | summary: e |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
102 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
103 o changeset: 3:055a42cdd887 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
104 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
105 | 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
|
106 | summary: d |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
107 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
108 o changeset: 2:177f92b77385 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
109 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
110 | 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
|
111 | summary: c |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
112 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
113 o changeset: 1:d2ae7f538514 |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
114 | user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
115 | 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
|
116 | summary: b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
117 | |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
118 o changeset: 0:cb9a9f314b8b |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
119 user: test |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
120 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
|
121 summary: a |
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
122 |
17064
168cc52ad7c2
histedit: new extension for interactive history editing
Augie Fackler <raf@durin42.com>
parents:
diff
changeset
|
123 |
17085
35729bdd59b6
tests: convert histedit tests to .t
Mads Kiilerich <mads@kiilerich.com>
parents:
17064
diff
changeset
|
124 $ cd .. |