annotate tests/test-rebase-mq.t @ 42621:99ebde4fec99

commit: improve the files field of changelog for merges Currently, the files list of merge commits repeats all the deletions (either actual deletions, or files that got renamed) that happened between base and p2 of the merge. If p2 is the main branch, the list can easily be much bigger than the change being merged. This results in various problems worth improving: - changelog is bigger than necessary - `hg log directory` lists many unrelated merge commits, and `hg log -v -r commit` frequently fills multiple screens worth of files - it possibly slows down adjustlinkrev, by forcing it to read more manifests, and that function can certainly be a bottleneck - the server side of pulls can waste a lot of time simply opening the filelogs for pointless files (the constant factors for opening even a tiny filelog is apparently pretty bad) So stop listing such files as described in the code. Impacted merge commits and their descendants get a different hash than they would have without this. This doesn't seem problematic, except for convert. The previous commit helped with that in the hg->hg case (but if you do svn->hg twice from scratch, hashes can still change). The rest of the description is numbers. I don't have much to report, because recreating the files list of existing repositories is not easy: - debugupgradeformat and bundle/unbundle don't recreate the list - export/import tends to choke quickly applying patches or on description that contain diffs, - merge commits from the convert extension don't have the right files list for reasons orthogonal to the current commit - replaying the merge with hg update/hg merge/hg revert --all/hg commit can end up failing in hg revert - I wasn't sure that using debugsetparents + debugrebuilddirstate would really build the right thing I measured commit time before and after this change, in a case with no files filtered out, several files filtered out (no difference) and 5k files filtered out (+1% time). Recreating the 100 more recent merges in a private repo, the concatenated uncompressed files lists goes from 1.12MB to 0.52MB. Excluding 3 merges that are not representative, then the size goes from 570k to 15k. I converted part of mozilla-central, and observed file list shrinking quite a bit too, starting at the very first merge, 733641d9feaf, going from 550 files to 10 files (although they have relatively few merges, so they probably wouldn't care). Differential Revision: https://phab.mercurial-scm.org/D6613
author Valentin Gatien-Baron <valentin.gatienbaron@gmail.com>
date Tue, 02 Jul 2019 12:59:58 -0400
parents 4edd427f34c1
children dc5e5577af39
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]
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
10 > tglog = log -G --template "{rev}: {node|short} '{desc}' tags: {tags}\n"
12608
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
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
36 @ 3: 929394423cd3 'P1' tags: f2.patch qtip tip
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
37 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
38 o 2: 3504f44bffc0 'P0' tags: f.patch qbase
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
39 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
40 | o 1: bac9ed9960d8 'R1' tags:
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
41 |/
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
42 o 0: 36f36ddbca61 'C1' tags: qparent
12608
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
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 23835
diff changeset
64 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
65 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
66 [1]
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
67
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
68 Fix the 1st conflict:
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
69
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
70 $ echo mq1r1 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
71 $ 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
72 (no more unresolved files)
27626
157675d0f600 rebase: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 26614
diff changeset
73 continue: hg rebase --continue
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
26614
ef1eb6df7071 simplemerge: move conflict warning message to filemerge
Siddharth Agarwal <sid0@fb.com>
parents: 23835
diff changeset
78 warning: conflicts while merging f! (edit, then use 'hg resolve --mark')
18933
42b620fc89e2 rebase: switch from util.Abort to util.InterventionRequired where appropriate (bc)
Augie Fackler <raf@durin42.com>
parents: 18648
diff changeset
79 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
80 [1]
6906
808f03f61ebe Add rebase extension
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents:
diff changeset
81
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
82 Fix the 2nd conflict:
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
83
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
84 $ echo mq1r1mq2 > f
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
85 $ 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
86 (no more unresolved files)
27626
157675d0f600 rebase: hook afterresolvedstates
timeless <timeless@mozdev.org>
parents: 26614
diff changeset
87 continue: hg rebase --continue
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)
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35385
diff changeset
91 saved backup bundle to $TESTTMP/a/.hg/strip-backup/3504f44bffc0-30595b40-rebase.hg
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
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
94 @ 3: 462012cf340c 'P1' tags: f2.patch qtip tip
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
95 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
96 o 2: ebe9914c0d1c 'P0' tags: f.patch qbase
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
97 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
98 o 1: bac9ed9960d8 'R1' tags: qparent
12608
16b854cb80f1 tests: unify test-rebase*
Adrian Buehlmann <adrian@cadifra.com>
parents: 11536
diff changeset
99 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
100 o 0: 36f36ddbca61 'C1' tags:
12608
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)
35393
4441705b7111 tests: remove (glob) annotations that were only for '\' matches
Matt Harbison <matt_harbison@yahoo.com>
parents: 35385
diff changeset
208 saved backup bundle to $TESTTMP/a/.hg/strip-backup/0c587ffcb480-0ea5695f-rebase.hg
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
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
301 @ 2: 4f44b861d38c '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 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
303 o 1: 0aaf4c3af7eb 'important commit message' tags: empty-important qbase
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
304 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
305 o 0: cb9a9f314b8b '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
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
321 @ 3: d526d4536ed6 '[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 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
323 | o 2: d2ae7f538514 'b' tags:
15904
7d28d6a67dd3 rebase: write series file without removed mq patches
Mads Kiilerich <mads@kiilerich.com>
parents: 15501
diff changeset
324 | |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
325 o | 1: 0aaf4c3af7eb '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 |/
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
327 o 0: cb9a9f314b8b '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
40865
4edd427f34c1 rebase: clarify that commits that become empty are skipped
Martin von Zweigbergk <martinvonz@google.com>
parents: 40864
diff changeset
340 note: not rebasing 1:0aaf4c3af7eb "important commit message" (empty-important qbase), its destination already has all its changes
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
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
354 @ 2: 477d948bb2af '[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 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
356 o 1: d2ae7f538514 'b' tags: qparent
13766
627e50e9e316 rebase: restore mq guards after rebasing (issue2107)
Stefano Tortarolo <stefano.tortarolo@gmail.com>
parents: 12896
diff changeset
357 |
35385
469b06b4c3ca tests: add commit hashes to log commands in rebase tests
Phil Cohen <phillco@fb.com>
parents: 33332
diff changeset
358 o 0: cb9a9f314b8b '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 ..