Mercurial > hg
annotate tests/test-push-warn.t @ 15233:81c97964d123
alias: don't shadow commands that we only partially matched (issue2993) (BC)
Previously, if you set an alias for "ci", it'd also shadow "commit"
even though you didn't specify that. This occurred for all commands
with explicit short variations.
author | Augie Fackler <durin42@gmail.com> |
---|---|
date | Tue, 11 Oct 2011 17:20:03 -0500 |
parents | 308e1b5acc87 |
children | 41885892796e |
rev | line source |
---|---|
12279 | 1 $ echo "[extensions]" >> $HGRCPATH |
2 $ echo "graphlog=" >> $HGRCPATH | |
816
8674b7803714
Warn on pushing unsynced repo or adding new heads
mpm@selenic.com
parents:
diff
changeset
|
3 |
13956
ffb5c09ba822
tests: remove redundant mkdir
Martin Geisler <mg@lazybytes.net>
parents:
13550
diff
changeset
|
4 $ hg init a |
12279 | 5 $ cd a |
6 $ echo foo > t1 | |
7 $ hg add t1 | |
8 $ hg commit -m "1" | |
10875
a9702c47a19f
partial backout of 1e819576e926 and add tests (issue2131)
Sune Foldager <cryo@cyanite.org>
parents:
10771
diff
changeset
|
9 |
12279 | 10 $ cd .. |
11 $ hg clone a b | |
12 updating to branch default | |
13 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
14 | |
15 $ cd a | |
16 $ echo foo > t2 | |
17 $ hg add t2 | |
18 $ hg commit -m "2" | |
19 | |
20 $ cd ../b | |
21 $ echo foo > t3 | |
22 $ hg add t3 | |
23 $ hg commit -m "3" | |
816
8674b7803714
Warn on pushing unsynced repo or adding new heads
mpm@selenic.com
parents:
diff
changeset
|
24 |
12279 | 25 $ hg push ../a |
26 pushing to ../a | |
27 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
28 abort: push creates new remote head 1e108cc5548c! |
12279 | 29 (you should pull and merge or use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
30 [255] |
816
8674b7803714
Warn on pushing unsynced repo or adding new heads
mpm@selenic.com
parents:
diff
changeset
|
31 |
12998
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
32 $ hg push --debug ../a |
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
33 pushing to ../a |
14164
cb98fed52495
discovery: add new set-based discovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14073
diff
changeset
|
34 query 1; heads |
12998
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
35 searching for changes |
14164
cb98fed52495
discovery: add new set-based discovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14073
diff
changeset
|
36 taking quick initial sample |
cb98fed52495
discovery: add new set-based discovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14073
diff
changeset
|
37 searching: 2 queries |
14624
f03c82d1f50a
setdiscovery: batch heads and known(ownheads)
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14526
diff
changeset
|
38 query 2; still undecided: 1, sample size is: 1 |
14164
cb98fed52495
discovery: add new set-based discovery
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
14073
diff
changeset
|
39 2 total queries |
12998
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
40 new remote heads on branch 'default' |
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
41 new remote head 1e108cc5548c |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
42 abort: push creates new remote head 1e108cc5548c! |
12998
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
43 (you should pull and merge or use push -f to force) |
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
44 [255] |
91cb08a9e7fb
discovery: list new remote heads in prepush() on --debug
Adrian Buehlmann <adrian@cadifra.com>
parents:
12785
diff
changeset
|
45 |
12279 | 46 $ hg pull ../a |
47 pulling from ../a | |
48 searching for changes | |
49 adding changesets | |
50 adding manifests | |
51 adding file changes | |
52 added 1 changesets with 1 changes to 1 files (+1 heads) | |
53 (run 'hg heads' to see heads, 'hg merge' to merge) | |
816
8674b7803714
Warn on pushing unsynced repo or adding new heads
mpm@selenic.com
parents:
diff
changeset
|
54 |
12279 | 55 $ hg push ../a |
56 pushing to ../a | |
57 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
58 abort: push creates new remote head 1e108cc5548c! |
12279 | 59 (did you forget to merge? use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
60 [255] |
12279 | 61 |
62 $ hg merge | |
63 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
64 (branch merge, don't forget to commit) | |
816
8674b7803714
Warn on pushing unsynced repo or adding new heads
mpm@selenic.com
parents:
diff
changeset
|
65 |
12279 | 66 $ hg commit -m "4" |
67 $ hg push ../a | |
68 pushing to ../a | |
69 searching for changes | |
70 adding changesets | |
71 adding manifests | |
72 adding file changes | |
73 added 2 changesets with 1 changes to 1 files | |
74 | |
75 $ cd .. | |
76 | |
77 $ hg init c | |
78 $ cd c | |
79 $ for i in 0 1 2; do | |
80 > echo $i >> foo | |
81 > hg ci -Am $i | |
82 > done | |
83 adding foo | |
84 $ cd .. | |
85 | |
86 $ hg clone c d | |
87 updating to branch default | |
88 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
2021
fc22ed56afe3
Fix hg push and hg push -r sometimes creating new heads without --force.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1933
diff
changeset
|
89 |
12279 | 90 $ cd d |
91 $ for i in 0 1; do | |
92 > hg co -C $i | |
93 > echo d-$i >> foo | |
94 > hg ci -m d-$i | |
95 > done | |
96 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
97 created new head | |
98 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
99 created new head | |
100 | |
101 $ HGMERGE=true hg merge 3 | |
102 merging foo | |
103 0 files updated, 1 files merged, 0 files removed, 0 files unresolved | |
104 (branch merge, don't forget to commit) | |
105 | |
106 $ hg ci -m c-d | |
2021
fc22ed56afe3
Fix hg push and hg push -r sometimes creating new heads without --force.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1933
diff
changeset
|
107 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
108 $ hg push ../c |
12279 | 109 pushing to ../c |
110 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
111 abort: push creates new remote head 6346d66eb9f5! |
12279 | 112 (did you forget to merge? use push -f to force) |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
113 [255] |
2021
fc22ed56afe3
Fix hg push and hg push -r sometimes creating new heads without --force.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1933
diff
changeset
|
114 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
115 $ hg push -r 2 ../c |
12279 | 116 pushing to ../c |
117 searching for changes | |
118 no changes found | |
119 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
120 $ hg push -r 3 ../c |
12279 | 121 pushing to ../c |
122 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
123 abort: push creates new remote head a5dda829a167! |
12279 | 124 (did you forget to merge? use push -f to force) |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
125 [255] |
2021
fc22ed56afe3
Fix hg push and hg push -r sometimes creating new heads without --force.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1933
diff
changeset
|
126 |
14526
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
127 $ hg push -v -r 3 -r 4 ../c |
12279 | 128 pushing to ../c |
129 searching for changes | |
14526
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
130 new remote heads on branch 'default' |
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
131 new remote head a5dda829a167 |
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
132 new remote head ee8fbc7a0295 |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
133 abort: push creates new remote head a5dda829a167! |
12279 | 134 (did you forget to merge? use push -f to force) |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
135 [255] |
12279 | 136 |
14526
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
137 $ hg push -v -f -r 3 -r 4 ../c |
12279 | 138 pushing to ../c |
139 searching for changes | |
14526
4276e3202585
prepush: show details about new remote heads with --verbose
Adrian Buehlmann <adrian@cadifra.com>
parents:
14525
diff
changeset
|
140 2 changesets found |
12279 | 141 adding changesets |
142 adding manifests | |
143 adding file changes | |
144 added 2 changesets with 2 changes to 1 files (+2 heads) | |
145 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
146 $ hg push -r 5 ../c |
12279 | 147 pushing to ../c |
148 searching for changes | |
149 adding changesets | |
150 adding manifests | |
151 adding file changes | |
152 added 1 changesets with 1 changes to 1 files (-1 heads) | |
2021
fc22ed56afe3
Fix hg push and hg push -r sometimes creating new heads without --force.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1933
diff
changeset
|
153 |
12279 | 154 $ hg in ../c |
155 comparing with ../c | |
156 searching for changes | |
157 no changes found | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
158 [1] |
12279 | 159 |
160 | |
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12365
diff
changeset
|
161 Issue450: push -r warns about remote head creation even if no heads |
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12365
diff
changeset
|
162 will be created |
3923
27230c29bfec
fix calculation of new heads added during push with -r
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
3803
diff
changeset
|
163 |
12279 | 164 $ hg init ../e |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
165 $ hg push -r 0 ../e |
12279 | 166 pushing to ../e |
167 searching for changes | |
168 adding changesets | |
169 adding manifests | |
170 adding file changes | |
171 added 1 changesets with 1 changes to 1 files | |
172 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
173 $ hg push -r 1 ../e |
12279 | 174 pushing to ../e |
175 searching for changes | |
176 adding changesets | |
177 adding manifests | |
178 adding file changes | |
179 added 1 changesets with 1 changes to 1 files | |
180 | |
181 $ cd .. | |
182 | |
183 | |
12399
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12365
diff
changeset
|
184 Issue736: named branches are not considered for detection of |
4fee1fd3de9a
tests: added a short description to issue numbers
Martin Geisler <mg@aragost.com>
parents:
12365
diff
changeset
|
185 unmerged heads in "hg push" |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
186 |
12279 | 187 $ hg init f |
188 $ cd f | |
189 $ hg -q branch a | |
190 $ echo 0 > foo | |
191 $ hg -q ci -Am 0 | |
192 $ echo 1 > foo | |
193 $ hg -q ci -m 1 | |
194 $ hg -q up 0 | |
195 $ echo 2 > foo | |
196 $ hg -q ci -m 2 | |
197 $ hg -q up 0 | |
198 $ hg -q branch b | |
199 $ echo 3 > foo | |
200 $ hg -q ci -m 3 | |
201 $ cd .. | |
202 | |
203 $ hg -q clone f g | |
204 $ cd g | |
205 | |
206 Push on existing branch and new branch: | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
207 |
12279 | 208 $ hg -q up 1 |
209 $ echo 4 > foo | |
210 $ hg -q ci -m 4 | |
211 $ hg -q up 0 | |
212 $ echo 5 > foo | |
213 $ hg -q branch c | |
214 $ hg -q ci -m 5 | |
215 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
216 $ hg push ../f |
12279 | 217 pushing to ../f |
218 searching for changes | |
219 abort: push creates new remote branches: c! | |
220 (use 'hg push --new-branch' to create new remote branches) | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
221 [255] |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
222 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
223 $ hg push -r 4 -r 5 ../f |
12279 | 224 pushing to ../f |
225 searching for changes | |
226 abort: push creates new remote branches: c! | |
227 (use 'hg push --new-branch' to create new remote branches) | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
228 [255] |
12279 | 229 |
230 | |
231 Multiple new branches: | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
232 |
12279 | 233 $ hg -q branch d |
234 $ echo 6 > foo | |
235 $ hg -q ci -m 6 | |
236 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
237 $ hg push ../f |
12279 | 238 pushing to ../f |
239 searching for changes | |
240 abort: push creates new remote branches: c, d! | |
241 (use 'hg push --new-branch' to create new remote branches) | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
242 [255] |
10354
844d83da2da9
prepush: warn about every new outgoing named branch, not just the first
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
9954
diff
changeset
|
243 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
244 $ hg push -r 4 -r 6 ../f |
12279 | 245 pushing to ../f |
246 searching for changes | |
247 abort: push creates new remote branches: c, d! | |
248 (use 'hg push --new-branch' to create new remote branches) | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
249 [255] |
12279 | 250 |
251 $ cd ../g | |
252 | |
253 | |
254 Fail on multiple head push: | |
255 | |
256 $ hg -q up 1 | |
257 $ echo 7 > foo | |
258 $ hg -q ci -m 7 | |
259 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
260 $ hg push -r 4 -r 7 ../f |
12279 | 261 pushing to ../f |
262 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
263 abort: push creates new remote head 0b715ef6ff8f on branch 'a'! |
12279 | 264 (did you forget to merge? use push -f to force) |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
265 [255] |
12279 | 266 |
267 Push replacement head on existing branches: | |
268 | |
269 $ hg -q up 3 | |
270 $ echo 8 > foo | |
271 $ hg -q ci -m 8 | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
272 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
273 $ hg push -r 7 -r 8 ../f |
12279 | 274 pushing to ../f |
275 searching for changes | |
276 adding changesets | |
277 adding manifests | |
278 adding file changes | |
279 added 2 changesets with 2 changes to 1 files | |
280 | |
281 | |
282 Merge of branch a to other branch b followed by unrelated push | |
283 on branch a: | |
284 | |
285 $ hg -q up 7 | |
286 $ HGMERGE=true hg -q merge 8 | |
287 $ hg -q ci -m 9 | |
288 $ hg -q up 8 | |
289 $ echo 10 > foo | |
290 $ hg -q ci -m 10 | |
291 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
292 $ hg push -r 9 ../f |
12279 | 293 pushing to ../f |
294 searching for changes | |
295 adding changesets | |
296 adding manifests | |
297 adding file changes | |
298 added 1 changesets with 1 changes to 1 files (-1 heads) | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
299 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
300 $ hg push -r 10 ../f |
12279 | 301 pushing to ../f |
302 searching for changes | |
303 adding changesets | |
304 adding manifests | |
305 adding file changes | |
306 added 1 changesets with 1 changes to 1 files (+1 heads) | |
307 | |
308 | |
309 Cheating the counting algorithm: | |
310 | |
311 $ hg -q up 9 | |
312 $ HGMERGE=true hg -q merge 2 | |
313 $ hg -q ci -m 11 | |
314 $ hg -q up 1 | |
315 $ echo 12 > foo | |
316 $ hg -q ci -m 12 | |
317 | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
318 $ hg push -r 11 -r 12 ../f |
12279 | 319 pushing to ../f |
320 searching for changes | |
321 adding changesets | |
322 adding manifests | |
323 adding file changes | |
324 added 2 changesets with 2 changes to 1 files | |
325 | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
326 |
12279 | 327 Failed push of new named branch: |
328 | |
329 $ echo 12 > foo | |
330 $ hg -q ci -m 12a | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
331 [1] |
12279 | 332 $ hg -q up 11 |
333 $ echo 13 > foo | |
334 $ hg -q branch e | |
335 $ hg -q ci -m 13d | |
8565
268d16b2ec25
tests: add tests for new pre-push logic (issue736)
Sune Foldager <cryo@cyanite.org>
parents:
3923
diff
changeset
|
336 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
337 $ hg push -r 12 -r 13 ../f |
12279 | 338 pushing to ../f |
339 searching for changes | |
340 abort: push creates new remote branches: e! | |
341 (use 'hg push --new-branch' to create new remote branches) | |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
342 [255] |
12279 | 343 |
344 | |
345 Using --new-branch to push new named branch: | |
11211
e43c23d189a5
push: add --new-branch option to allow intial push of new branches
Sune Foldager <cryo@cyanite.org>
parents:
10925
diff
changeset
|
346 |
12365
22f3353bcc36
tests: cleanup exit code handling in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12328
diff
changeset
|
347 $ hg push --new-branch -r 12 -r 13 ../f |
12279 | 348 pushing to ../f |
349 searching for changes | |
350 adding changesets | |
351 adding manifests | |
352 adding file changes | |
353 added 1 changesets with 1 changes to 1 files | |
354 | |
11211
e43c23d189a5
push: add --new-branch option to allow intial push of new branches
Sune Foldager <cryo@cyanite.org>
parents:
10925
diff
changeset
|
355 |
12785
c7d23b4ca4ba
check-code: warning and fixes for whitespace in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12399
diff
changeset
|
356 Checking prepush logic does not allow silently pushing |
12279 | 357 multiple new heads: |
358 | |
359 $ cd .. | |
360 $ hg init h | |
361 $ echo init > h/init | |
362 $ hg -R h ci -Am init | |
363 adding init | |
364 $ echo a > h/a | |
365 $ hg -R h ci -Am a | |
366 adding a | |
367 $ hg clone h i | |
368 updating to branch default | |
369 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
370 $ hg -R h up 0 | |
371 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
372 $ echo b > h/b | |
373 $ hg -R h ci -Am b | |
374 adding b | |
375 created new head | |
376 $ hg -R i up 0 | |
377 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
378 $ echo c > i/c | |
379 $ hg -R i ci -Am c | |
380 adding c | |
381 created new head | |
9479
f3569d95c2ab
push: fix subtle bug in prepush logic
Sune Foldager <cryo@cyanite.org>
parents:
8565
diff
changeset
|
382 |
12279 | 383 $ hg -R i push h |
384 pushing to h | |
385 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
386 abort: push creates new remote head 97bd0c84d346! |
12279 | 387 (you should pull and merge or use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
388 [255] |
12279 | 389 |
390 | |
391 Check prepush logic with merged branches: | |
392 | |
393 $ hg init j | |
394 $ hg -R j branch a | |
395 marked working directory as branch a | |
396 $ echo init > j/foo | |
397 $ hg -R j ci -Am init | |
398 adding foo | |
399 $ hg clone j k | |
400 updating to branch a | |
401 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
402 $ echo a1 > j/foo | |
403 $ hg -R j ci -m a1 | |
404 $ hg -R k branch b | |
405 marked working directory as branch b | |
406 $ echo b > k/foo | |
407 $ hg -R k ci -m b | |
408 $ hg -R k up 0 | |
409 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
410 | |
411 $ hg -R k merge b | |
412 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
413 (branch merge, don't forget to commit) | |
414 | |
415 $ hg -R k ci -m merge | |
9954
d6a307719ccb
fix bug in prepush logic involving merge changesets
Sune Foldager <cryo@cyanite.org>
parents:
9609
diff
changeset
|
416 |
12279 | 417 $ hg -R k push -r a j |
418 pushing to j | |
419 searching for changes | |
420 abort: push creates new remote branches: b! | |
421 (use 'hg push --new-branch' to create new remote branches) | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
422 [255] |
12279 | 423 |
424 | |
425 Prepush -r should not allow you to sneak in new heads: | |
10875
a9702c47a19f
partial backout of 1e819576e926 and add tests (issue2131)
Sune Foldager <cryo@cyanite.org>
parents:
10771
diff
changeset
|
426 |
12279 | 427 $ hg init l |
428 $ cd l | |
429 $ echo a >> foo | |
430 $ hg -q add foo | |
431 $ hg -q branch a | |
432 $ hg -q ci -ma | |
433 $ hg -q up null | |
434 $ echo a >> foo | |
435 $ hg -q add foo | |
436 $ hg -q branch b | |
437 $ hg -q ci -mb | |
438 $ cd .. | |
439 $ hg -q clone l m -u a | |
440 $ cd m | |
441 $ hg -q merge b | |
442 $ hg -q ci -mmb | |
443 $ hg -q up 0 | |
444 $ echo a >> foo | |
445 $ hg -q ci -ma2 | |
446 $ hg -q up 2 | |
447 $ echo a >> foo | |
448 $ hg -q branch -f b | |
449 $ hg -q ci -mb2 | |
450 $ hg -q merge 3 | |
451 $ hg -q ci -mma | |
452 | |
453 $ hg push ../l -b b | |
454 pushing to ../l | |
455 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
456 abort: push creates new remote head e7e31d71180f on branch 'a'! |
12279 | 457 (did you forget to merge? use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
458 [255] |
12279 | 459 |
460 $ cd .. | |
461 | |
462 | |
463 Check prepush with new branch head on former topo non-head: | |
464 | |
465 $ hg init n | |
466 $ cd n | |
467 $ hg branch A | |
468 marked working directory as branch A | |
469 $ echo a >a | |
470 $ hg ci -Ama | |
471 adding a | |
472 $ hg branch B | |
473 marked working directory as branch B | |
474 $ echo b >b | |
475 $ hg ci -Amb | |
476 adding b | |
477 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
478 b is now branch head of B, and a topological head |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
479 a is now branch head of A, but not a topological head |
12279 | 480 |
481 $ hg clone . inner | |
482 updating to branch B | |
483 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
484 $ cd inner | |
485 $ hg up B | |
486 0 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
487 $ echo b1 >b1 | |
488 $ hg ci -Amb1 | |
489 adding b1 | |
490 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
491 in the clone b1 is now the head of B |
12279 | 492 |
493 $ cd .. | |
494 $ hg up 0 | |
495 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
496 $ echo a2 >a2 | |
497 $ hg ci -Ama2 | |
498 adding a2 | |
499 | |
12785
c7d23b4ca4ba
check-code: warning and fixes for whitespace in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12399
diff
changeset
|
500 a2 is now the new branch head of A, and a new topological head |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
501 it replaces a former inner branch head, so it should at most warn about |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
502 A, not B |
12279 | 503 |
504 glog of local: | |
505 | |
506 $ hg glog --template "{rev}: {branches} {desc}\n" | |
507 @ 2: A a2 | |
508 | | |
509 | o 1: B b | |
510 |/ | |
511 o 0: A a | |
512 | |
513 glog of remote: | |
514 | |
515 $ hg glog -R inner --template "{rev}: {branches} {desc}\n" | |
516 @ 2: B b1 | |
517 | | |
518 o 1: B b | |
519 | | |
520 o 0: A a | |
521 | |
522 outgoing: | |
523 | |
524 $ hg out inner --template "{rev}: {branches} {desc}\n" | |
525 comparing with inner | |
526 searching for changes | |
527 2: A a2 | |
528 | |
529 $ hg push inner | |
530 pushing to inner | |
531 searching for changes | |
532 adding changesets | |
533 adding manifests | |
534 adding file changes | |
535 added 1 changesets with 1 changes to 1 files (+1 heads) | |
536 | |
537 $ cd .. | |
538 | |
539 | |
540 Check prepush with new branch head on former topo head: | |
10875
a9702c47a19f
partial backout of 1e819576e926 and add tests (issue2131)
Sune Foldager <cryo@cyanite.org>
parents:
10771
diff
changeset
|
541 |
12279 | 542 $ hg init o |
543 $ cd o | |
544 $ hg branch A | |
545 marked working directory as branch A | |
546 $ echo a >a | |
547 $ hg ci -Ama | |
548 adding a | |
549 $ hg branch B | |
550 marked working directory as branch B | |
551 $ echo b >b | |
552 $ hg ci -Amb | |
553 adding b | |
554 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
555 b is now branch head of B, and a topological head |
12279 | 556 |
557 $ hg up 0 | |
558 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
559 $ echo a1 >a1 | |
560 $ hg ci -Ama1 | |
561 adding a1 | |
562 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
563 a1 is now branch head of A, and a topological head |
12279 | 564 |
565 $ hg clone . inner | |
566 updating to branch A | |
567 2 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
568 $ cd inner | |
569 $ hg up B | |
570 1 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
571 $ echo b1 >b1 | |
572 $ hg ci -Amb1 | |
573 adding b1 | |
574 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
575 in the clone b1 is now the head of B |
12279 | 576 |
577 $ cd .. | |
578 $ echo a2 >a2 | |
579 $ hg ci -Ama2 | |
580 adding a2 | |
581 | |
12328
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
582 a2 is now the new branch head of A, and a topological head |
b63f6422d2a7
tests: fix a bunch of pointless #s in unified tests
Matt Mackall <mpm@selenic.com>
parents:
12316
diff
changeset
|
583 it replaces a former topological and branch head, so this should not warn |
12279 | 584 |
585 glog of local: | |
586 | |
587 $ hg glog --template "{rev}: {branches} {desc}\n" | |
588 @ 3: A a2 | |
589 | | |
590 o 2: A a1 | |
591 | | |
592 | o 1: B b | |
593 |/ | |
594 o 0: A a | |
595 | |
596 glog of remote: | |
597 | |
598 $ hg glog -R inner --template "{rev}: {branches} {desc}\n" | |
599 @ 3: B b1 | |
600 | | |
601 | o 2: A a1 | |
602 | | | |
603 o | 1: B b | |
604 |/ | |
605 o 0: A a | |
606 | |
607 outgoing: | |
608 | |
609 $ hg out inner --template "{rev}: {branches} {desc}\n" | |
610 comparing with inner | |
611 searching for changes | |
612 3: A a2 | |
613 | |
614 $ hg push inner | |
615 pushing to inner | |
616 searching for changes | |
617 adding changesets | |
618 adding manifests | |
619 adding file changes | |
620 added 1 changesets with 1 changes to 1 files | |
621 | |
622 $ cd .. | |
623 | |
624 | |
625 Check prepush with new branch head and new child of former branch head | |
626 but child is on different branch: | |
627 | |
628 $ hg init p | |
629 $ cd p | |
630 $ hg branch A | |
631 marked working directory as branch A | |
632 $ echo a0 >a | |
633 $ hg ci -Ama0 | |
634 adding a | |
635 $ echo a1 >a | |
636 $ hg ci -ma1 | |
637 $ hg up null | |
638 0 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
639 $ hg branch B | |
640 marked working directory as branch B | |
641 $ echo b0 >b | |
642 $ hg ci -Amb0 | |
643 adding b | |
644 $ echo b1 >b | |
645 $ hg ci -mb1 | |
646 | |
647 $ hg clone . inner | |
648 updating to branch B | |
649 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | |
10771
01f097c4ae66
push: fix bug in prepush logic and its tests
Sune Foldager <cryo@cyanite.org>
parents:
10354
diff
changeset
|
650 |
12279 | 651 $ hg up A |
652 1 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
653 $ hg branch -f B | |
654 marked working directory as branch B | |
655 $ echo a3 >a | |
656 $ hg ci -ma3 | |
657 created new head | |
658 $ hg up 3 | |
659 1 files updated, 0 files merged, 1 files removed, 0 files unresolved | |
660 $ hg branch -f A | |
661 marked working directory as branch A | |
662 $ echo b3 >b | |
663 $ hg ci -mb3 | |
664 created new head | |
10909
29a83fb8c067
prepush: add more test cases
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
10908
diff
changeset
|
665 |
12279 | 666 glog of local: |
667 | |
668 $ hg glog --template "{rev}: {branches} {desc}\n" | |
669 @ 5: A b3 | |
670 | | |
671 | o 4: B a3 | |
672 | | | |
673 o | 3: B b1 | |
674 | | | |
675 o | 2: B b0 | |
676 / | |
677 o 1: A a1 | |
678 | | |
679 o 0: A a0 | |
680 | |
681 glog of remote: | |
10909
29a83fb8c067
prepush: add more test cases
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
10908
diff
changeset
|
682 |
12279 | 683 $ hg glog -R inner --template "{rev}: {branches} {desc}\n" |
684 @ 3: B b1 | |
685 | | |
686 o 2: B b0 | |
687 | |
688 o 1: A a1 | |
689 | | |
690 o 0: A a0 | |
691 | |
692 outgoing: | |
693 | |
694 $ hg out inner --template "{rev}: {branches} {desc}\n" | |
695 comparing with inner | |
696 searching for changes | |
697 4: B a3 | |
698 5: A b3 | |
10909
29a83fb8c067
prepush: add more test cases
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
10908
diff
changeset
|
699 |
12279 | 700 $ hg push inner |
701 pushing to inner | |
702 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
703 abort: push creates new remote head 7d0f4fb6cf04 on branch 'A'! |
12279 | 704 (did you forget to merge? use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
705 [255] |
10909
29a83fb8c067
prepush: add more test cases
Peter Arrenbrecht <peter.arrenbrecht@gmail.com>
parents:
10908
diff
changeset
|
706 |
12279 | 707 $ hg push inner -r4 -r5 |
708 pushing to inner | |
709 searching for changes | |
14525
826a13720fbc
prepush: print short hash of first new head in abort message
Adrian Buehlmann <adrian@cadifra.com>
parents:
14164
diff
changeset
|
710 abort: push creates new remote head 7d0f4fb6cf04 on branch 'A'! |
12279 | 711 (did you forget to merge? use push -f to force) |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
712 [255] |
12279 | 713 |
714 $ hg in inner | |
715 comparing with inner | |
716 searching for changes | |
717 no changes found | |
12316
4134686b83e1
tests: add exit codes to unified tests
Matt Mackall <mpm@selenic.com>
parents:
12279
diff
changeset
|
718 [1] |