annotate tests/test-rebase-mq.t @ 26375:3686fa2b8eee

windows: insert file positioning call between reads and writes fopen() and fdopen() have a unique-to-Windows requirement that transitions between read and write operations in files opened in modes r+, w+, and a+ perform a file positioning call (fsetpos, fseek, or rewind) in between. While the MSDN docs don't say what will happen if this is not done, observations reveal that Python raises an IOError with errno 0. Furthermore, I /think/ this behavior isn't deterministic. But I can reproduce it reliably with subsequent patches applied that open revlogs in a+ mode and perform both reads and writes. This patch introduces a proxy class for file handles opened in r+, w+, and a+ mode on Windows. The class intercepts calls and audits whether a file positioning function has been called between read and write operations. If not, a dummy, no-op seek to the current file position is performed. This appears to be sufficient to "trick" Windows into allowing transitions between read and writes without raising errors.
author Gregory Szorc <gregory.szorc@gmail.com>
date Sun, 27 Sep 2015 18:46:53 -0700
parents aa4a1672583e
children ef1eb6df7071
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
1 $ cat >> $HGRCPATH <<EOF
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
2 > [extensions]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
3 > rebase=
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
4 > mq=
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
5 >
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
6 > [mq]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
7 > plain=true
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
8 >
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
9 > [alias]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
10 > tglog = log -G --template "{rev}: '{desc}' tags: {tags}\n"
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
11 > EOF
11198
b345b1cc124f rebase: use helpers.sh in tests
Matt Mackall <mpm@selenic.com>
parents: 10672
diff changeset
12
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
13
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
14 $ hg init a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
15 $ cd a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
16 $ hg qinit -c
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
17
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
18 $ echo c1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
19 $ hg add f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
20 $ hg ci -m C1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
21
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
22 $ echo r1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
23 $ hg ci -m R1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
24
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
25 $ hg up -q 0
10397
8cb81d75730c mq: add parent node IDs to MQ patches on qrefresh/qnew
Steve Losh <steve@stevelosh.com>
parents: 8168
diff changeset
26
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
27 $ hg qnew f.patch -d '1 0'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
28 $ echo mq1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
29 $ hg qref -m P0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
30
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
31 $ hg qnew f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
32 $ echo mq2 > f
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
33 $ hg qref -m P1 -d '2 0'
6931
02f4a0bcfdce test-rebase-mq: '|' is a GNU sed extension, unfold it
Patrick Mezard <pmezard@gmail.com>
parents: 6906
diff changeset
34
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
35 $ hg tglog
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
36 @ 3: 'P1' tags: f2.patch qtip tip
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
37 |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
38 o 2: 'P0' tags: f.patch qbase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
39 |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
40 | o 1: 'R1' tags:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
41 |/
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
42 o 0: 'C1' tags: qparent
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
43
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
44
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
45 Rebase - try to rebase on an applied mq patch:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
46
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
47 $ hg rebase -s 1 -d 3
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
48 abort: cannot rebase onto an applied mq patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
49 [255]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
50
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
51 Rebase - same thing, but mq patch is default dest:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
52
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
53 $ hg up -q 1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
54 $ hg rebase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
55 abort: cannot rebase onto an applied mq patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
56 [255]
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
57 $ hg up -q qtip
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
58
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
59 Rebase - generate a conflict:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
60
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
61 $ hg rebase -s 2 -d 1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
62 rebasing 2:3504f44bffc0 "P0" (f.patch qbase)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
63 merging f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
64 warning: conflicts during merge.
15501
2371f4aea665 merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents: 14599
diff changeset
65 merging f incomplete! (edit conflicts, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
66 unresolved conflicts (see hg resolve, then hg rebase --continue)
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18933
diff changeset
67 [1]
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
68
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
69 Fix the 1st conflict:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
70
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
71 $ echo mq1r1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
72 $ hg resolve -m f
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21267
diff changeset
73 (no more unresolved files)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
74 $ hg rebase -c
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
75 rebasing 2:3504f44bffc0 "P0" (f.patch qbase)
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
76 rebasing 3:929394423cd3 "P1" (f2.patch qtip tip)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
77 merging f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
78 warning: conflicts during merge.
15501
2371f4aea665 merge: give a special message for internal:merge failure (issue3105)
Matt Mackall <mpm@selenic.com>
parents: 14599
diff changeset
79 merging f incomplete! (edit conflicts, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
80 unresolved conflicts (see hg resolve, then hg rebase --continue)
18935
e5d9441ec281 dispatch: exit with status 1 for an InterventionRequired exception (bc)
Augie Fackler <raf@durin42.com>
parents: 18933
diff changeset
81 [1]
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
82
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
83 Fix the 2nd conflict:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
84
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
85 $ echo mq1r1mq2 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
86 $ hg resolve -m f
21947
b081decd9062 resolve: add parenthesis around "no more unresolved files" message
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 21267
diff changeset
87 (no more unresolved files)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
88 $ hg rebase -c
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
89 already rebased 2:3504f44bffc0 "P0" (f.patch qbase) as ebe9914c0d1c
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
90 rebasing 3:929394423cd3 "P1" (f2.patch qtip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
91 saved backup bundle to $TESTTMP/a/.hg/strip-backup/3504f44bffc0-30595b40-backup.hg (glob)
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
92
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
93 $ hg tglog
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
94 @ 3: 'P1' tags: f2.patch qtip tip
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
95 |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
96 o 2: 'P0' tags: f.patch qbase
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
97 |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
98 o 1: 'R1' tags: qparent
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
99 |
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
100 o 0: 'C1' tags:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
101
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
102 $ hg up -q qbase
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
103
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
104 $ cat f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
105 mq1r1
10672
c2e1e637d4da rebase: always check if rebasing onto an applied mq patch.
Greg Ward <greg-hg@gerg.ca>
parents: 10397
diff changeset
106
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
107 $ cat .hg/patches/f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
108 # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
109 # User test
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
110 # Date 1 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
111 # Thu Jan 01 00:00:01 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
112 # Node ID ebe9914c0d1c3f60096e952fa4dbb3d377dea3ab
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
113 # Parent bac9ed9960d8992bcad75864a879fa76cadaf1b0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
114 P0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
115
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
116 diff -r bac9ed9960d8 -r ebe9914c0d1c f
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
117 --- a/f Thu Jan 01 00:00:00 1970 +0000
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
118 +++ b/f Thu Jan 01 00:00:01 1970 +0000
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
119 @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
120 -r1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
121 +mq1r1
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
122
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
123 Update to qtip:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
124
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
125 $ hg up -q qtip
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
126
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
127 $ cat f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
128 mq1r1mq2
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
129
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
130 $ cat .hg/patches/f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
131 # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
132 # User test
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
133 # Date 2 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
134 # Thu Jan 01 00:00:02 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
135 # Node ID 462012cf340c97d44d62377c985a423f6bb82f07
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
136 # Parent ebe9914c0d1c3f60096e952fa4dbb3d377dea3ab
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
137 P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
138
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
139 diff -r ebe9914c0d1c -r 462012cf340c f
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
140 --- a/f Thu Jan 01 00:00:01 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
141 +++ b/f Thu Jan 01 00:00:02 1970 +0000
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
142 @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
143 -mq1r1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
144 +mq1r1mq2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
145
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
146 Adding one git-style patch and one normal:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
147
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
148 $ hg qpop -a
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
149 popping f2.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
150 popping f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
151 patch queue now empty
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
152
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
153 $ rm -fr .hg/patches
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
154 $ hg qinit -c
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
155
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
156 $ hg up -q 0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
157
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
158 $ hg qnew --git f_git.patch -d '3 0'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
159 $ echo mq1 > p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
160 $ hg add p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
161 $ hg qref --git -m 'P0 (git)'
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
162
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
163 $ hg qnew f.patch -d '4 0'
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
164 $ echo mq2 > p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
165 $ hg qref -m P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
166 $ hg qci -m 'save patch state'
6931
02f4a0bcfdce test-rebase-mq: '|' is a GNU sed extension, unfold it
Patrick Mezard <pmezard@gmail.com>
parents: 6906
diff changeset
167
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
168 $ hg qseries -s
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
169 f_git.patch: P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
170 f.patch: P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
171
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
172 $ hg -R .hg/patches manifest
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
173 .hgignore
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
174 f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
175 f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
176 series
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
177
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
178 $ cat .hg/patches/f_git.patch
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
179 Date: 3 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
180
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
181 P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
182
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
183 diff --git a/p b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
184 new file mode 100644
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
185 --- /dev/null
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
186 +++ b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
187 @@ -0,0 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
188 +mq1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
189
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
190 $ cat .hg/patches/f.patch
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
191 Date: 4 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
192
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
193 P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
194
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
195 diff -r ???????????? p (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
196 --- a/p ??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
197 +++ b/p ??? ??? ?? ??:??:?? ???? ????? (glob)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
198 @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
199 -mq1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
200 +mq2
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
201
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
202
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
203 Rebase the applied mq patches:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
204
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
205 $ hg rebase -s 2 -d 1
23517
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
206 rebasing 2:0c587ffcb480 "P0 (git)" (f_git.patch qbase)
4f18e80d9c30 rebase: show more useful status information while rebasing
Mads Kiilerich <madski@unity3d.com>
parents: 23515
diff changeset
207 rebasing 3:c7f18665e4bc "P1" (f.patch qtip tip)
23835
aa4a1672583e bundles: do not overwrite existing backup bundles (BC)
Durham Goode <durham@fb.com>
parents: 23518
diff changeset
208 saved backup bundle to $TESTTMP/a/.hg/strip-backup/0c587ffcb480-0ea5695f-backup.hg (glob)
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
209
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
210 $ hg qci -m 'save patch state'
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
211
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
212 $ hg qseries -s
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
213 f_git.patch: P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
214 f.patch: P1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
215
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
216 $ hg -R .hg/patches manifest
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
217 .hgignore
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
218 f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
219 f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
220 series
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
221
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
222 $ cat .hg/patches/f_git.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
223 # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
224 # User test
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
225 # Date 3 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
226 # Thu Jan 01 00:00:03 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
227 # Node ID 12d9f6a3bbe560dee50c7c454d434add7fb8e837
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
228 # Parent bac9ed9960d8992bcad75864a879fa76cadaf1b0
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
229 P0 (git)
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
230
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
231 diff --git a/p b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
232 new file mode 100644
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
233 --- /dev/null
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
234 +++ b/p
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
235 @@ -0,0 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
236 +mq1
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
237
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
238 $ cat .hg/patches/f.patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
239 # HG changeset patch
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
240 # User test
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
241 # Date 4 0
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
242 # Thu Jan 01 00:00:04 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
243 # Node ID c77a2661c64c60d82f63c4f7aefd95b3a948a557
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
244 # Parent 12d9f6a3bbe560dee50c7c454d434add7fb8e837
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
245 P1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
246
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
247 diff -r 12d9f6a3bbe5 -r c77a2661c64c p
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
248 --- a/p Thu Jan 01 00:00:03 1970 +0000
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
249 +++ b/p Thu Jan 01 00:00:04 1970 +0000
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
250 @@ -1,1 +1,1 @@
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
251 -mq1
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
252 +mq2
7955
c3d4ff03ec72 rebase: keep original mq patch format (Issue1574)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 6931
diff changeset
253
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16531
diff changeset
254 $ cd ..
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
255
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
256 Rebase with guards
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
257
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
258 $ hg init foo
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
259 $ cd foo
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
260 $ echo a > a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
261 $ hg ci -Am a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
262 adding a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
263
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
264 Create mq repo with guarded patches foo and bar and empty patch:
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
265
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
266 $ hg qinit
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
267 $ echo guarded > guarded
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
268 $ hg add guarded
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
269 $ hg qnew guarded
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
270 $ hg qnew empty-important -m 'important commit message' -d '1 0'
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
271 $ echo bar > bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
272 $ hg add bar
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
273 $ hg qnew bar -d '2 0'
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
274 $ echo foo > foo
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
275 $ hg add foo
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
276 $ hg qnew foo
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
277 $ hg qpop -a
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
278 popping foo
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
279 popping bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
280 popping empty-important
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
281 popping guarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
282 patch queue now empty
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
283 $ hg qguard guarded +guarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
284 $ hg qguard bar +baz
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
285 $ hg qguard foo +baz
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
286 $ hg qselect baz
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
287 number of unguarded, unapplied patches has changed from 1 to 3
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
288 $ hg qpush bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
289 applying empty-important
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
290 patch empty-important is empty
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
291 applying bar
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
292 now at: bar
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
293
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
294 $ hg qguard -l
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
295 guarded: +guarded
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
296 empty-important: unguarded
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
297 bar: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
298 foo: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
299
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
300 $ hg tglog
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
301 @ 2: 'imported patch bar' tags: bar qtip tip
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
302 |
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
303 o 1: 'important commit message' tags: empty-important qbase
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
304 |
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
305 o 0: 'a' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
306
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
307 Create new head to rebase bar onto:
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
308
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
309 $ hg up -C 0
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
310 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
311 $ echo b > b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
312 $ hg add b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
313 $ hg ci -m b
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
314 created new head
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
315 $ hg up -C 2
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
316 1 files updated, 0 files merged, 1 files removed, 0 files unresolved
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
317 $ echo a >> a
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
318 $ hg qref
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
319
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
320 $ hg tglog
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
321 @ 3: '[mq]: bar' tags: bar qtip tip
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
322 |
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
323 | o 2: 'b' tags:
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
324 | |
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
325 o | 1: 'important commit message' tags: empty-important qbase
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
326 |/
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
327 o 0: 'a' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
328
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
329
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
330 Rebase bar (make sure series order is preserved and empty-important also is
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
331 removed from the series):
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
332
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
333 $ hg qseries
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
334 guarded
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
335 empty-important
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
336 bar
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
337 foo
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
338 $ [ -f .hg/patches/empty-important ]
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
339 $ hg -q rebase -d 2
23518
2fb0504b8175 rebase: show warning when rebase creates no changes to commit
Mads Kiilerich <madski@unity3d.com>
parents: 23517
diff changeset
340 note: rebase of 1:0aaf4c3af7eb created no changes to commit
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
341 $ hg qseries
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
342 guarded
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
343 bar
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
344 foo
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
345 $ [ -f .hg/patches/empty-important ]
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
346 [1]
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
347
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
348 $ hg qguard -l
16531
b9f51f49bf2a rebase: preserve mq series order, guarded patches (issue2849)
Patrick Mezard <patrick@mezard.eu>
parents: 15904
diff changeset
349 guarded: +guarded
14599
b28004513977 rebase: preserve mq series order after rebasing (issue2849)
Idan Kamara <idankk86@gmail.com>
parents: 13766
diff changeset
350 bar: +baz
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
351 foo: +baz
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
352
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
353 $ hg tglog
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
354 @ 2: '[mq]: bar' tags: bar qbase qtip tip
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
355 |
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
356 o 1: 'b' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
357 |
23515
7856a87bbb02 tests: stabilise mq rebase tests
Mads Kiilerich <madski@unity3d.com>
parents: 21947
diff changeset
358 o 0: 'a' tags:
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
359
16912
6ef3107c661e tests: cleanup of tests that got lost in their own nested directories
Mads Kiilerich <mads@kiilerich.com>
parents: 16531
diff changeset
360 $ cd ..