annotate tests/test-histedit-obsolete.t @ 19326:7014526d67a8

revlog: add exception when linkrev == nullrev When we deployed the latest crew mercurial to our users, a few of them had issues where a filelog would have an entry with a -1 linkrev. This caused operations like rebase and amend to create a bundle containing the entire repository, which took a long time. I don't know what the issue is, but adding this check should prevent repos from getting in this state, and should help us pinpoint the issue next time it happens.
author Durham Goode <durham@fb.com>
date Mon, 17 Jun 2013 19:44:00 -0700
parents 53060cc1b601
children 10a0ae668fe6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
1 $ . "$TESTDIR/histedit-helpers.sh"
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
2
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
3 Enable obsolete
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
4
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
5 $ cat > ${TESTTMP}/obs.py << EOF
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
6 > import mercurial.obsolete
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
7 > mercurial.obsolete._enabled = True
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
8 > EOF
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
9
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
10 $ cat >> $HGRCPATH << EOF
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
11 > [ui]
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
12 > logtemplate= {rev}:{node|short} {desc|firstline}
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
13 > [phases]
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
14 > publish=False
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
15 > [extensions]'
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
16 > histedit=
18438
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
17 > rebase=
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
18 >
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
19 > obs=${TESTTMP}/obs.py
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
20 > EOF
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
21
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
22 $ hg init base
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
23 $ cd base
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
24
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
25 $ for x in a b c d e f ; do
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
26 > echo $x > $x
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
27 > hg add $x
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
28 > hg ci -m $x
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
29 > done
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
30
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
31 $ hg log --graph
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
32 @ 5:652413bf663e f
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
33 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
34 o 4:e860deea161a e
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
35 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
36 o 3:055a42cdd887 d
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
37 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
38 o 2:177f92b77385 c
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
39 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
40 o 1:d2ae7f538514 b
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
41 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
42 o 0:cb9a9f314b8b a
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
43
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
44
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
45 $ HGEDITOR=cat hg histedit 1
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
46 pick d2ae7f538514 1 b
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
47 pick 177f92b77385 2 c
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
48 pick 055a42cdd887 3 d
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
49 pick e860deea161a 4 e
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
50 pick 652413bf663e 5 f
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
51
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
52 # Edit history between d2ae7f538514 and 652413bf663e
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
53 #
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
54 # Commands:
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
55 # p, pick = use commit
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
56 # e, edit = use commit, but stop for amending
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
57 # f, fold = use commit, but fold into previous commit (combines N and N-1)
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
58 # d, drop = remove commit from history
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
59 # m, mess = edit message without changing commit content
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
60 #
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
61 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
62 $ hg histedit 1 --commands - --verbose <<EOF | grep histedit
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
63 > pick 177f92b77385 2 c
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
64 > drop d2ae7f538514 1 b
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
65 > pick 055a42cdd887 3 d
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
66 > fold e860deea161a 4 e
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
67 > pick 652413bf663e 5 f
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
68 > EOF
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
69 saved backup bundle to $TESTTMP/base/.hg/strip-backup/96e494a2d553-backup.hg (glob)
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
70 $ hg log --graph --hidden
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
71 @ 8:cacdfd884a93 f
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
72 |
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
73 o 7:59d9f330561f d
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
74 |
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
75 o 6:b346ab9a313d c
17759
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
76 |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
77 | x 5:652413bf663e f
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
78 | |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
79 | x 4:e860deea161a e
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
80 | |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
81 | x 3:055a42cdd887 d
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
82 | |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
83 | x 2:177f92b77385 c
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
84 | |
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
85 | x 1:d2ae7f538514 b
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
86 |/
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
87 o 0:cb9a9f314b8b a
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
88
9c7497cd39fd histedit: add obsolete support
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
89 $ hg debugobsolete
17771
dcfa526b180b histedit: create obsolescence markers in deterministic order
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17764
diff changeset
90 d2ae7f538514cd87c17547b0de4cea71fe1af9fb 0 {'date': '* *', 'user': 'test'} (glob)
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
91 177f92b773850b59254aa5e923436f921b55483b b346ab9a313db8537ecf96fca3ca3ca984ef3bd7 0 {'date': '* *', 'user': 'test'} (glob)
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
92 055a42cdd88768532f9cf79daa407fc8d138de9b 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
93 e860deea161a2f77de56603b340ebbb4536308ae 59d9f330561fd6c88b1a6b32f0e45034d88db784 0 {'date': '* *', 'user': 'test'} (glob)
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
94 652413bf663ef2a641cab26574e46d5f5a64a55a cacdfd884a9321ec4e1de275ef3949fa953a1f83 0 {'date': '* *', 'user': 'test'} (glob)
17771
dcfa526b180b histedit: create obsolescence markers in deterministic order
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17764
diff changeset
95
17761
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
96
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
97 Ensure hidden revision does not prevent histedit
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
98 -------------------------------------------------
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
99
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
100 create an hidden revision
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
101
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
102 $ hg histedit 6 --commands - << EOF
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
103 > pick b346ab9a313d 6 c
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
104 > drop 59d9f330561f 7 d
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
105 > pick cacdfd884a93 8 f
17761
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
106 > EOF
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
107 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
108 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
109 $ hg log --graph
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
110 @ 9:c13eb81022ca f
17761
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
111 |
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
112 o 6:b346ab9a313d c
17761
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
113 |
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
114 o 0:cb9a9f314b8b a
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
115
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
116 check hidden revision are ignored (6 have hidden children 7 and 8)
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
117
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
118 $ hg histedit 6 --commands - << EOF
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
119 > pick b346ab9a313d 6 c
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
120 > pick c13eb81022ca 8 f
17761
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
121 > EOF
c80a7a0c7d22 histedit: ignores hidden revision when checking for orphaned nodes
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 17759
diff changeset
122 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
17762
57f27cbfc5bb histedit: refuse to edit public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17761
diff changeset
123
57f27cbfc5bb histedit: refuse to edit public changeset
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17761
diff changeset
124
18165
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
125
18398
1a00c8451640 test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18165
diff changeset
126 Test that rewriting leaving instability behind is allowed
1a00c8451640 test: fix in-test comments related to obsolescence
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 18165
diff changeset
127 ---------------------------------------------------------------------
18165
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
128
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
129 $ hg up '.^'
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
130 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
131 $ hg log -r 'children(.)'
18437
358c23e8f1c6 histedit: record histedit source (issue3681)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18398
diff changeset
132 9:c13eb81022ca f (no-eol)
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
133 $ hg histedit -r '.' --commands - <<EOF
18438
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
134 > edit b346ab9a313d 6 c
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
135 > EOF
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
136 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
137 adding c
18934
93f3a06b2035 histedit: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18509
diff changeset
138 Make changes as needed, you may commit or record as needed now.
18438
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
139 When you are finished, run hg histedit --continue to resume.
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18934
diff changeset
140 [1]
18438
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
141 $ echo c >> c
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
142 $ hg histedit --continue
18165
0f5a0a2073a8 histedit: allow operation from non-head if obsolete is enabled
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 17771
diff changeset
143 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
18438
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
144
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
145 $ hg log -r 'unstable()'
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
146 9:c13eb81022ca f (no-eol)
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
147
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
148 stabilise
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
149
81e77a8820f3 test-histedit: fix instability creation test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18437
diff changeset
150 $ hg rebase -r 'unstable()' -d .
18439
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
151
18509
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
152 Test dropping of changeset on the top of the stack
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
153 -------------------------------------------------------
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
154
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
155 Nothing is rewritten below, the working directory parent must be change for the
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
156 dropped changeset to be hidden.
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
157
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
158 $ cd ..
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
159 $ hg clone base droplast
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
160 updating to branch default
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
161 3 files updated, 0 files merged, 0 files removed, 0 files unresolved
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
162 $ cd droplast
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
163 $ hg histedit -r '40db8afa467b' --commands - << EOF
18509
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
164 > pick 40db8afa467b 10 c
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
165 > drop b449568bf7fc 11 f
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
166 > EOF
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
167 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
168 $ hg log -G
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
169 @ 10:40db8afa467b c
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
170 |
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
171 o 0:cb9a9f314b8b a
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
172
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
173
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
174 With rewritten ancestors
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
175
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
176 $ echo e > e
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
177 $ hg add e
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
178 $ hg commit -m g
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
179 $ echo f > f
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
180 $ hg add f
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
181 $ hg commit -m h
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
182 $ hg histedit -r '40db8afa467b' --commands - << EOF
18509
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
183 > pick 47a8561c0449 12 g
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
184 > pick 40db8afa467b 10 c
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
185 > drop 1b3b05f35ff0 13 h
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
186 > EOF
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
187 0 files updated, 0 files merged, 3 files removed, 0 files unresolved
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
188 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
189 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
190 $ hg log -G
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
191 @ 15:ee6544123ab8 c
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
192 |
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
193 o 14:269e713e9eae g
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
194 |
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
195 o 0:cb9a9f314b8b a
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
196
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
197 $ cd ../base
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
198
21daee53c101 test-histedit: add tests for dropping head changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18440
diff changeset
199
18439
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
200
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
201 Test phases support
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
202 ===========================================
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
203
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
204 Check that histedit respect immutability
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
205 -------------------------------------------
18439
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
206
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
207 $ cat >> $HGRCPATH << EOF
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
208 > [ui]
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
209 > logtemplate= {rev}:{node|short} ({phase}) {desc|firstline}\n
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
210 > EOF
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
211
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
212 $ hg ph -pv '.^'
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
213 phase changed for 2 changesets
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
214 $ hg log -G
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
215 @ 11:b449568bf7fc (draft) f
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
216 |
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
217 o 10:40db8afa467b (public) c
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
218 |
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
219 o 0:cb9a9f314b8b (public) a
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
220
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
221 $ hg histedit -r '.~2'
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
222 abort: cannot edit immutable changeset: cb9a9f314b8b
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
223 [255]
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
224
c6e3fa134da5 test-histedit: reorder phases test and prepare for more
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18438
diff changeset
225
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
226 Prepare further testing
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
227 -------------------------------------------
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
228
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
229 $ for x in g h i j k ; do
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
230 > echo $x > $x
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
231 > hg add $x
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
232 > hg ci -m $x
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
233 > done
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
234 $ hg phase --force --secret .~2
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
235 $ hg log -G
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
236 @ 16:ee118ab9fa44 (secret) k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
237 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
238 o 15:3a6c53ee7f3d (secret) j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
239 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
240 o 14:b605fb7503f2 (secret) i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
241 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
242 o 13:7395e1ff83bd (draft) h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
243 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
244 o 12:6b70183d2492 (draft) g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
245 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
246 o 11:b449568bf7fc (draft) f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
247 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
248 o 10:40db8afa467b (public) c
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
249 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
250 o 0:cb9a9f314b8b (public) a
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
251
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
252 $ cd ..
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
253
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
254 simple phase conservation
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
255 -------------------------------------------
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
256
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
257 Resulting changeset should conserve the phase of the original one whatever the
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
258 phases.new-commit option is.
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
259
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
260 New-commit as draft (default)
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
261
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
262 $ cp -r base simple-draft
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
263 $ cd simple-draft
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
264 $ hg histedit -r 'b449568bf7fc' --commands - << EOF
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
265 > edit b449568bf7fc 11 f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
266 > pick 6b70183d2492 12 g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
267 > pick 7395e1ff83bd 13 h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
268 > pick b605fb7503f2 14 i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
269 > pick 3a6c53ee7f3d 15 j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
270 > pick ee118ab9fa44 16 k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
271 > EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
272 0 files updated, 0 files merged, 6 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
273 adding f
18934
93f3a06b2035 histedit: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18509
diff changeset
274 Make changes as needed, you may commit or record as needed now.
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
275 When you are finished, run hg histedit --continue to resume.
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18934
diff changeset
276 [1]
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
277 $ echo f >> f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
278 $ hg histedit --continue
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
279 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
280 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
281 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
282 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
283 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
284 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
285 $ hg log -G
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
286 @ 22:12e89af74238 (secret) k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
287 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
288 o 21:636a8687b22e (secret) j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
289 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
290 o 20:ccaf0a38653f (secret) i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
291 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
292 o 19:11a89d1c2613 (draft) h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
293 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
294 o 18:c1dec7ca82ea (draft) g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
295 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
296 o 17:087281e68428 (draft) f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
297 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
298 o 10:40db8afa467b (public) c
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
299 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
300 o 0:cb9a9f314b8b (public) a
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
301
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
302 $ cd ..
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
303
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
304
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
305 New-commit as draft (default)
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
306
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
307 $ cp -r base simple-secret
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
308 $ cd simple-secret
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
309 $ cat >> .hg/hgrc << EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
310 > [phases]
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
311 > new-commit=secret
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
312 > EOF
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
313 $ hg histedit -r 'b449568bf7fc' --commands - << EOF
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
314 > edit b449568bf7fc 11 f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
315 > pick 6b70183d2492 12 g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
316 > pick 7395e1ff83bd 13 h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
317 > pick b605fb7503f2 14 i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
318 > pick 3a6c53ee7f3d 15 j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
319 > pick ee118ab9fa44 16 k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
320 > EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
321 0 files updated, 0 files merged, 6 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
322 adding f
18934
93f3a06b2035 histedit: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18509
diff changeset
323 Make changes as needed, you may commit or record as needed now.
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
324 When you are finished, run hg histedit --continue to resume.
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18934
diff changeset
325 [1]
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
326 $ echo f >> f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
327 $ hg histedit --continue
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
328 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
329 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
330 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
331 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
332 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
333 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
334 $ hg log -G
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
335 @ 22:12e89af74238 (secret) k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
336 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
337 o 21:636a8687b22e (secret) j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
338 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
339 o 20:ccaf0a38653f (secret) i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
340 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
341 o 19:11a89d1c2613 (draft) h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
342 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
343 o 18:c1dec7ca82ea (draft) g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
344 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
345 o 17:087281e68428 (draft) f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
346 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
347 o 10:40db8afa467b (public) c
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
348 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
349 o 0:cb9a9f314b8b (public) a
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
350
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
351 $ cd ..
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
352
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
353
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
354 Changeset reordering
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
355 -------------------------------------------
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
356
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
357 If a secret changeset is put before a draft one, all descendant should be secret.
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
358 It seems more important to present the secret phase.
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
359
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
360 $ cp -r base reorder
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
361 $ cd reorder
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
362 $ hg histedit -r 'b449568bf7fc' --commands - << EOF
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
363 > pick b449568bf7fc 11 f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
364 > pick 3a6c53ee7f3d 15 j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
365 > pick 6b70183d2492 12 g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
366 > pick b605fb7503f2 14 i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
367 > pick 7395e1ff83bd 13 h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
368 > pick ee118ab9fa44 16 k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
369 > EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
370 0 files updated, 0 files merged, 5 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
371 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
372 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
373 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
374 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
375 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
376 $ hg log -G
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
377 @ 21:558246857888 (secret) k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
378 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
379 o 20:28bd44768535 (secret) h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
380 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
381 o 19:d5395202aeb9 (secret) i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
382 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
383 o 18:21edda8e341b (secret) g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
384 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
385 o 17:5ab64f3a4832 (secret) j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
386 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
387 o 11:b449568bf7fc (draft) f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
388 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
389 o 10:40db8afa467b (public) c
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
390 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
391 o 0:cb9a9f314b8b (public) a
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
392
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
393 $ cd ..
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
394
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
395 Changeset folding
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
396 -------------------------------------------
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
397
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
398 Folding a secret changeset with a draft one turn the result secret (again,
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
399 better safe than sorry). Folding between same phase changeset still works
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
400
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
401 Note that there is a few reordering in this series for more extensive test
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
402
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
403 $ cp -r base folding
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
404 $ cd folding
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
405 $ cat >> .hg/hgrc << EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
406 > [phases]
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
407 > new-commit=secret
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
408 > EOF
19019
53060cc1b601 histedit-test: generalise --commands "-" usage
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18935
diff changeset
409 $ hg histedit -r 'b449568bf7fc' --commands - << EOF
18440
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
410 > pick 7395e1ff83bd 13 h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
411 > fold b449568bf7fc 11 f
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
412 > pick 6b70183d2492 12 g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
413 > fold 3a6c53ee7f3d 15 j
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
414 > pick b605fb7503f2 14 i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
415 > fold ee118ab9fa44 16 k
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
416 > EOF
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
417 0 files updated, 0 files merged, 6 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
418 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
419 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
420 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
421 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
422 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
423 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
424 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
425 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
426 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
427 0 files updated, 0 files merged, 2 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
428 2 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
429 0 files updated, 0 files merged, 0 files removed, 0 files unresolved
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
430 saved backup bundle to $TESTTMP/folding/.hg/strip-backup/58019c66f35f-backup.hg (glob)
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
431 saved backup bundle to $TESTTMP/folding/.hg/strip-backup/83d1858e070b-backup.hg (glob)
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
432 saved backup bundle to $TESTTMP/folding/.hg/strip-backup/859969f5ed7e-backup.hg (glob)
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
433 $ hg log -G
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
434 @ 19:f9daec13fb98 (secret) i
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
435 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
436 o 18:49807617f46a (secret) g
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
437 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
438 o 17:050280826e04 (draft) h
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
439 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
440 o 10:40db8afa467b (public) c
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
441 |
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
442 o 0:cb9a9f314b8b (public) a
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
443
35513c59f376 histedit: proper phase conservation (issue3724)
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 18439
diff changeset
444 $ cd ..