annotate tests/test-mq-safety.t @ 19636:6bbce5efc67b

mq: look for modified subrepos when checking for local changes It was possible to apply, unapply, fold, patches (etc) with modified subrepos, which resulted in surprising behavior. For example it was easy to apply a patch with a modified subrepo, and then the refresh it and accidentally end up including the modified subrepo on the refreshed patch. A test has been added to verify this new check. # HG changeset patch # User Angel Ezquerra <angel.ezquerra@gmail.com> # Date 1375742979 -7200 # Tue Aug 06 00:49:39 2013 +0200 # Node ID a5c90acff5e61aae714ba6c9457d766c54b4f124 # Parent 6ac206fb6f27492a98f46bbff090407ee1b1de72 mq: look for modified subrepos when checking for local changes It was possible to apply, unapply, fold, patches (etc) with modified subrepos, which resulted in surprising behavior. For example it was easy to apply a patch with a modified subrepo, and then the refresh it and accidentally end up including the modified subrepo on the refreshed patch. A test has been added to verify this new check.
author Angel Ezquerra <angel.ezquerra@gmail.com>
date Tue, 06 Aug 2013 00:49:39 +0200
parents c6e38fdff23c
children aa9385f983fa
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
1 $ echo '[extensions]' >> $HGRCPATH
16048
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
2 $ echo 'hgext.mq =' >> $HGRCPATH
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
3 $ echo 'hgext.graphlog =' >> $HGRCPATH
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
4
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
5 $ hg init repo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
6 $ cd repo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
7
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
8 $ echo foo > foo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
9 $ hg ci -qAm 'add a file'
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
10
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
11 $ hg qinit
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
12
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
13 $ hg qnew foo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
14 $ echo foo >> foo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
15 $ hg qrefresh -m 'append foo'
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
16
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
17 $ hg qnew bar
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
18 $ echo bar >> foo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
19 $ hg qrefresh -m 'append bar'
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
20
16048
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
21 Try to operate on public mq changeset
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
22
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
23 $ hg qpop
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
24 popping bar
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
25 now at: foo
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
26 $ hg phase --public qbase
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
27 $ echo babar >> foo
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
28 $ hg qref
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
29 abort: cannot refresh immutable revision
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
30 (see "hg help phases" for details)
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
31 [255]
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
32 $ hg revert -a
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
33 reverting foo
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
34 $ hg qpop
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
35 abort: popping would remove an immutable revision
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
36 (see "hg help phases" for details)
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
37 [255]
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
38 $ hg qfold bar
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
39 abort: cannot refresh immutable revision
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
40 (see "hg help phases" for details)
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
41 [255]
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
42 $ hg revert -a
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
43 reverting foo
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
44
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
45 restore state for remaining test
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
46
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
47 $ hg qpush
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
48 applying bar
140b6282ac79 mq: prevent rewriting operation on public changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 16023
diff changeset
49 now at: bar
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
50
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
51 try to commit on top of a patch
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
52
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
53 $ echo quux >> foo
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
54 $ hg ci -m 'append quux'
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
55 abort: cannot commit over an applied mq patch
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
56 [255]
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
57
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
58
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
59 cheat a bit...
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
60
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
61 $ mv .hg/patches .hg/patches2
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
62 $ hg ci -m 'append quux'
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
63 $ mv .hg/patches2 .hg/patches
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
64
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
65
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
66 qpop/qrefresh on the wrong revision
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
67
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
68 $ hg qpop
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
69 abort: popping would remove a revision not managed by this patch queue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
70 [255]
12108
a57e0762c5ec tests: mq-safety: use regular expression instead of sed
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 11898
diff changeset
71 $ hg qpop -n patches
15447
9910f60a37ee tests: make (glob) on windows accept \ instead of /
Mads Kiilerich <mads@kiilerich.com>
parents: 12847
diff changeset
72 using patch queue: $TESTTMP/repo/.hg/patches (glob)
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
73 abort: popping would remove a revision not managed by this patch queue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
74 [255]
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
75 $ hg qrefresh
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
76 abort: working directory revision is not qtip
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
77 [255]
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
78
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
79 $ hg up -C qtip
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
80 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
81 $ hg qpop
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
82 abort: popping would remove a revision not managed by this patch queue
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
83 [255]
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
84 $ hg qrefresh
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
85 abort: cannot refresh a revision with children
12316
4134686b83e1 tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents: 12108
diff changeset
86 [255]
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
87 $ hg tip --template '{rev} {desc}\n'
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
88 3 append quux
5980
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
89
dcda0c90125c mq: pop/refresh: avoid losing revisions not managed by mq
Alexis S. L. Carvalho <alexis@cecm.usp.br>
parents:
diff changeset
90
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
91 qpush warning branchheads
10362
2e3ec7ef5349 mq: don't warn on qpush against a branch head
Dirkjan Ochtman <djc.ochtman@kentyde.com>
parents: 10119
diff changeset
92
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
93 $ cd ..
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
94 $ hg init branchy
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
95 $ cd branchy
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
96 $ echo q > q
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
97 $ hg add q
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
98 $ hg qnew -f qp
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
99 $ hg qpop
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
100 popping qp
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
101 patch queue now empty
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
102 $ echo a > a
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
103 $ hg ci -Ama
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
104 adding a
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
105 $ hg up null
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
106 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
107 $ hg branch b
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
108 marked working directory as branch b
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12847
diff changeset
109 (branches are permanent and global, did you want a bookmark?)
11898
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
110 $ echo c > c
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
111 $ hg ci -Amc
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
112 adding c
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
113 $ hg merge default
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
114 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
115 (branch merge, don't forget to commit)
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
116 $ hg ci -mmerge
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
117 $ hg up default
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
118 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
119 $ hg log
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
120 changeset: 2:65309210bf4e
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
121 branch: b
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
122 tag: tip
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
123 parent: 1:707adb4c8ae1
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
124 parent: 0:cb9a9f314b8b
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
125 user: test
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
126 date: Thu Jan 01 00:00:00 1970 +0000
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
127 summary: merge
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
128
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
129 changeset: 1:707adb4c8ae1
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
130 branch: b
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
131 parent: -1:000000000000
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
132 user: test
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
133 date: Thu Jan 01 00:00:00 1970 +0000
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
134 summary: c
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
135
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
136 changeset: 0:cb9a9f314b8b
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
137 user: test
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
138 date: Thu Jan 01 00:00:00 1970 +0000
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
139 summary: a
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
140
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
141 $ hg qpush
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
142 applying qp
7dc8b9e25f19 tests: unify test-mq-safety
Nicolas Dumazet <nicdumz.commits@gmail.com>
parents: 10362
diff changeset
143 now at: qp
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
144
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
145 Testing applied patches, push and --force
12378
ab237534d800 mq: always require --force when pushing patches (issue2363)
Patrick Mezard <pmezard@gmail.com>
parents: 10362
diff changeset
146
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
147 $ cd ..
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
148 $ hg init forcepush
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
149 $ cd forcepush
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
150 $ echo a > a
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
151 $ hg ci -Am adda
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
152 adding a
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
153 $ echo a >> a
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
154 $ hg ci -m changea
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
155 $ hg up 0
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
156 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
157 $ hg branch branch
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
158 marked working directory as branch branch
15615
41885892796e branch: warn on branching
Matt Mackall <mpm@selenic.com>
parents: 12847
diff changeset
159 (branches are permanent and global, did you want a bookmark?)
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
160 $ echo b > b
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
161 $ hg ci -Am addb
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
162 adding b
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
163 $ hg up 0
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
164 0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
165 $ hg --cwd .. clone -r 0 forcepush forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
166 adding changesets
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
167 adding manifests
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
168 adding file changes
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
169 added 1 changesets with 1 changes to 1 files
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
170 updating to branch default
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
171 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
172 $ echo a >> a
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
173 $ hg qnew patch
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
174
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
175 Pushing applied patch with --rev without --force
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
176
15952
ec8a9e06cf05 mq-safety: don't apply safety on non-outgoing changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15951
diff changeset
177 $ hg push -r . ../forcepush2
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
178 pushing to ../forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
179 abort: source has mq patches applied
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
180 [255]
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
181
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
182 Pushing applied patch with branchhash, without --force
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
183
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
184 $ hg push ../forcepush2#default
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
185 pushing to ../forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
186 abort: source has mq patches applied
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
187 [255]
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
188
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
189 Pushing revs excluding applied patch
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
190
17199
c6e38fdff23c tests: convert a push test to use revsets
Matt Harbison <matt_harbison@yahoo.com>
parents: 16913
diff changeset
191 $ hg push --new-branch -r 'branch(branch)' -r 2 ../forcepush2
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
192 pushing to ../forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
193 searching for changes
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
194 adding changesets
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
195 adding manifests
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
196 adding file changes
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
197 added 1 changesets with 1 changes to 1 files
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
198
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
199 Pushing applied patch with --force
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
200
15952
ec8a9e06cf05 mq-safety: don't apply safety on non-outgoing changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15951
diff changeset
201 $ hg phase --force --secret 'mq()'
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
202 $ hg push --force -r default ../forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
203 pushing to ../forcepush2
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
204 searching for changes
15993
0b05e0bfdc1c scmutil: unify some 'no changes found' messages
Matt Mackall <mpm@selenic.com>
parents: 15952
diff changeset
205 no changes found (ignored 1 secret changesets)
16023
90f8b8dd0326 push: return 1 if no changes found (issue3228)
Matt Mackall <mpm@selenic.com>
parents: 16017
diff changeset
206 [1]
15952
ec8a9e06cf05 mq-safety: don't apply safety on non-outgoing changeset
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15951
diff changeset
207 $ hg phase --draft 'mq()'
15926
f94513971767 mq: have mq create secret changeset only
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15623
diff changeset
208 $ hg push --force -r default ../forcepush2
f94513971767 mq: have mq create secret changeset only
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15623
diff changeset
209 pushing to ../forcepush2
f94513971767 mq: have mq create secret changeset only
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 15623
diff changeset
210 searching for changes
12380
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
211 adding changesets
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
212 adding manifests
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
213 adding file changes
1e2625fe371b merge with stable
Matt Mackall <mpm@selenic.com>
parents: 12378 12376
diff changeset
214 added 1 changesets with 1 changes to 1 files (+1 heads)
16913
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16048
diff changeset
215
f2719b387380 tests: add missing trailing 'cd ..'
Mads Kiilerich <mads@kiilerich.com>
parents: 16048
diff changeset
216 $ cd ..