##// END OF EJS Templates
test-bundle: enable for Windows
Adrian Buehlmann -
r16903:a1a57d3f default
parent child Browse files
Show More
@@ -1,600 +1,598
1 $ "$TESTDIR/hghave" system-sh || exit 80
2
3 1 Setting up test
4 2
5 3 $ hg init test
6 4 $ cd test
7 5 $ echo 0 > afile
8 6 $ hg add afile
9 7 $ hg commit -m "0.0"
10 8 $ echo 1 >> afile
11 9 $ hg commit -m "0.1"
12 10 $ echo 2 >> afile
13 11 $ hg commit -m "0.2"
14 12 $ echo 3 >> afile
15 13 $ hg commit -m "0.3"
16 14 $ hg update -C 0
17 15 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
18 16 $ echo 1 >> afile
19 17 $ hg commit -m "1.1"
20 18 created new head
21 19 $ echo 2 >> afile
22 20 $ hg commit -m "1.2"
23 21 $ echo "a line" > fred
24 22 $ echo 3 >> afile
25 23 $ hg add fred
26 24 $ hg commit -m "1.3"
27 25 $ hg mv afile adifferentfile
28 26 $ hg commit -m "1.3m"
29 27 $ hg update -C 3
30 28 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
31 29 $ hg mv afile anotherfile
32 30 $ hg commit -m "0.3m"
33 31 $ hg verify
34 32 checking changesets
35 33 checking manifests
36 34 crosschecking files in changesets and manifests
37 35 checking files
38 36 4 files, 9 changesets, 7 total revisions
39 37 $ cd ..
40 38 $ hg init empty
41 39
42 40 Bundle and phase
43 41
44 42 $ hg -R test phase --force --secret 0
45 43 $ hg -R test bundle phase.hg empty
46 44 searching for changes
47 45 no changes found (ignored 9 secret changesets)
48 46 [1]
49 47 $ hg -R test phase --draft -r 'head()'
50 48
51 49 Bundle --all
52 50
53 51 $ hg -R test bundle --all all.hg
54 52 9 changesets found
55 53
56 54 Bundle test to full.hg
57 55
58 56 $ hg -R test bundle full.hg empty
59 57 searching for changes
60 58 9 changesets found
61 59
62 60 Unbundle full.hg in test
63 61
64 62 $ hg -R test unbundle full.hg
65 63 adding changesets
66 64 adding manifests
67 65 adding file changes
68 66 added 0 changesets with 0 changes to 4 files
69 67 (run 'hg update' to get a working copy)
70 68
71 69 Verify empty
72 70
73 71 $ hg -R empty heads
74 72 [1]
75 73 $ hg -R empty verify
76 74 checking changesets
77 75 checking manifests
78 76 crosschecking files in changesets and manifests
79 77 checking files
80 78 0 files, 0 changesets, 0 total revisions
81 79
82 80 Pull full.hg into test (using --cwd)
83 81
84 82 $ hg --cwd test pull ../full.hg
85 83 pulling from ../full.hg
86 84 searching for changes
87 85 no changes found
88 86
89 87 Pull full.hg into empty (using --cwd)
90 88
91 89 $ hg --cwd empty pull ../full.hg
92 90 pulling from ../full.hg
93 91 requesting all changes
94 92 adding changesets
95 93 adding manifests
96 94 adding file changes
97 95 added 9 changesets with 7 changes to 4 files (+1 heads)
98 96 (run 'hg heads' to see heads, 'hg merge' to merge)
99 97
100 98 Rollback empty
101 99
102 100 $ hg -R empty rollback
103 101 repository tip rolled back to revision -1 (undo pull)
104 102
105 103 Pull full.hg into empty again (using --cwd)
106 104
107 105 $ hg --cwd empty pull ../full.hg
108 106 pulling from ../full.hg
109 107 requesting all changes
110 108 adding changesets
111 109 adding manifests
112 110 adding file changes
113 111 added 9 changesets with 7 changes to 4 files (+1 heads)
114 112 (run 'hg heads' to see heads, 'hg merge' to merge)
115 113
116 114 Pull full.hg into test (using -R)
117 115
118 116 $ hg -R test pull full.hg
119 117 pulling from full.hg
120 118 searching for changes
121 119 no changes found
122 120
123 121 Pull full.hg into empty (using -R)
124 122
125 123 $ hg -R empty pull full.hg
126 124 pulling from full.hg
127 125 searching for changes
128 126 no changes found
129 127
130 128 Rollback empty
131 129
132 130 $ hg -R empty rollback
133 131 repository tip rolled back to revision -1 (undo pull)
134 132
135 133 Pull full.hg into empty again (using -R)
136 134
137 135 $ hg -R empty pull full.hg
138 136 pulling from full.hg
139 137 requesting all changes
140 138 adding changesets
141 139 adding manifests
142 140 adding file changes
143 141 added 9 changesets with 7 changes to 4 files (+1 heads)
144 142 (run 'hg heads' to see heads, 'hg merge' to merge)
145 143
146 144 Log -R full.hg in fresh empty
147 145
148 146 $ rm -r empty
149 147 $ hg init empty
150 148 $ cd empty
151 149 $ hg -R bundle://../full.hg log
152 150 changeset: 8:aa35859c02ea
153 151 tag: tip
154 152 parent: 3:eebf5a27f8ca
155 153 user: test
156 154 date: Thu Jan 01 00:00:00 1970 +0000
157 155 summary: 0.3m
158 156
159 157 changeset: 7:a6a34bfa0076
160 158 user: test
161 159 date: Thu Jan 01 00:00:00 1970 +0000
162 160 summary: 1.3m
163 161
164 162 changeset: 6:7373c1169842
165 163 user: test
166 164 date: Thu Jan 01 00:00:00 1970 +0000
167 165 summary: 1.3
168 166
169 167 changeset: 5:1bb50a9436a7
170 168 user: test
171 169 date: Thu Jan 01 00:00:00 1970 +0000
172 170 summary: 1.2
173 171
174 172 changeset: 4:095197eb4973
175 173 parent: 0:f9ee2f85a263
176 174 user: test
177 175 date: Thu Jan 01 00:00:00 1970 +0000
178 176 summary: 1.1
179 177
180 178 changeset: 3:eebf5a27f8ca
181 179 user: test
182 180 date: Thu Jan 01 00:00:00 1970 +0000
183 181 summary: 0.3
184 182
185 183 changeset: 2:e38ba6f5b7e0
186 184 user: test
187 185 date: Thu Jan 01 00:00:00 1970 +0000
188 186 summary: 0.2
189 187
190 188 changeset: 1:34c2bf6b0626
191 189 user: test
192 190 date: Thu Jan 01 00:00:00 1970 +0000
193 191 summary: 0.1
194 192
195 193 changeset: 0:f9ee2f85a263
196 194 user: test
197 195 date: Thu Jan 01 00:00:00 1970 +0000
198 196 summary: 0.0
199 197
200 198 Make sure bundlerepo doesn't leak tempfiles (issue2491)
201 199
202 200 $ ls .hg
203 201 00changelog.i
204 202 cache
205 203 requires
206 204 store
207 205
208 206 Pull ../full.hg into empty (with hook)
209 207
210 $ echo '[hooks]' >> .hg/hgrc
211 $ echo 'changegroup = python "$TESTDIR"/printenv.py changegroup' >> .hg/hgrc
208 $ echo "[hooks]" >> .hg/hgrc
209 $ echo "changegroup = python \"$TESTDIR\"/printenv.py changegroup" >> .hg/hgrc
212 210
213 211 doesn't work (yet ?)
214 212
215 213 hg -R bundle://../full.hg verify
216 214
217 215 $ hg pull bundle://../full.hg
218 216 pulling from bundle:../full.hg
219 217 requesting all changes
220 218 adding changesets
221 219 adding manifests
222 220 adding file changes
223 221 added 9 changesets with 7 changes to 4 files (+1 heads)
224 222 changegroup hook: HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 HG_SOURCE=pull HG_URL=bundle:../full.hg
225 223 (run 'hg heads' to see heads, 'hg merge' to merge)
226 224
227 225 Rollback empty
228 226
229 227 $ hg rollback
230 228 repository tip rolled back to revision -1 (undo pull)
231 229 $ cd ..
232 230
233 231 Log -R bundle:empty+full.hg
234 232
235 233 $ hg -R bundle:empty+full.hg log --template="{rev} "; echo ""
236 234 8 7 6 5 4 3 2 1 0
237 235
238 236 Pull full.hg into empty again (using -R; with hook)
239 237
240 238 $ hg -R empty pull full.hg
241 239 pulling from full.hg
242 240 requesting all changes
243 241 adding changesets
244 242 adding manifests
245 243 adding file changes
246 244 added 9 changesets with 7 changes to 4 files (+1 heads)
247 245 changegroup hook: HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 HG_SOURCE=pull HG_URL=bundle:empty+full.hg
248 246 (run 'hg heads' to see heads, 'hg merge' to merge)
249 247
250 248 Create partial clones
251 249
252 250 $ rm -r empty
253 251 $ hg init empty
254 252 $ hg clone -r 3 test partial
255 253 adding changesets
256 254 adding manifests
257 255 adding file changes
258 256 added 4 changesets with 4 changes to 1 files
259 257 updating to branch default
260 258 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
261 259 $ hg clone partial partial2
262 260 updating to branch default
263 261 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
264 262 $ cd partial
265 263
266 264 Log -R full.hg in partial
267 265
268 266 $ hg -R bundle://../full.hg log
269 267 changeset: 8:aa35859c02ea
270 268 tag: tip
271 269 parent: 3:eebf5a27f8ca
272 270 user: test
273 271 date: Thu Jan 01 00:00:00 1970 +0000
274 272 summary: 0.3m
275 273
276 274 changeset: 7:a6a34bfa0076
277 275 user: test
278 276 date: Thu Jan 01 00:00:00 1970 +0000
279 277 summary: 1.3m
280 278
281 279 changeset: 6:7373c1169842
282 280 user: test
283 281 date: Thu Jan 01 00:00:00 1970 +0000
284 282 summary: 1.3
285 283
286 284 changeset: 5:1bb50a9436a7
287 285 user: test
288 286 date: Thu Jan 01 00:00:00 1970 +0000
289 287 summary: 1.2
290 288
291 289 changeset: 4:095197eb4973
292 290 parent: 0:f9ee2f85a263
293 291 user: test
294 292 date: Thu Jan 01 00:00:00 1970 +0000
295 293 summary: 1.1
296 294
297 295 changeset: 3:eebf5a27f8ca
298 296 user: test
299 297 date: Thu Jan 01 00:00:00 1970 +0000
300 298 summary: 0.3
301 299
302 300 changeset: 2:e38ba6f5b7e0
303 301 user: test
304 302 date: Thu Jan 01 00:00:00 1970 +0000
305 303 summary: 0.2
306 304
307 305 changeset: 1:34c2bf6b0626
308 306 user: test
309 307 date: Thu Jan 01 00:00:00 1970 +0000
310 308 summary: 0.1
311 309
312 310 changeset: 0:f9ee2f85a263
313 311 user: test
314 312 date: Thu Jan 01 00:00:00 1970 +0000
315 313 summary: 0.0
316 314
317 315
318 316 Incoming full.hg in partial
319 317
320 318 $ hg incoming bundle://../full.hg
321 319 comparing with bundle:../full.hg
322 320 searching for changes
323 321 changeset: 4:095197eb4973
324 322 parent: 0:f9ee2f85a263
325 323 user: test
326 324 date: Thu Jan 01 00:00:00 1970 +0000
327 325 summary: 1.1
328 326
329 327 changeset: 5:1bb50a9436a7
330 328 user: test
331 329 date: Thu Jan 01 00:00:00 1970 +0000
332 330 summary: 1.2
333 331
334 332 changeset: 6:7373c1169842
335 333 user: test
336 334 date: Thu Jan 01 00:00:00 1970 +0000
337 335 summary: 1.3
338 336
339 337 changeset: 7:a6a34bfa0076
340 338 user: test
341 339 date: Thu Jan 01 00:00:00 1970 +0000
342 340 summary: 1.3m
343 341
344 342 changeset: 8:aa35859c02ea
345 343 tag: tip
346 344 parent: 3:eebf5a27f8ca
347 345 user: test
348 346 date: Thu Jan 01 00:00:00 1970 +0000
349 347 summary: 0.3m
350 348
351 349
352 350 Outgoing -R full.hg vs partial2 in partial
353 351
354 352 $ hg -R bundle://../full.hg outgoing ../partial2
355 353 comparing with ../partial2
356 354 searching for changes
357 355 changeset: 4:095197eb4973
358 356 parent: 0:f9ee2f85a263
359 357 user: test
360 358 date: Thu Jan 01 00:00:00 1970 +0000
361 359 summary: 1.1
362 360
363 361 changeset: 5:1bb50a9436a7
364 362 user: test
365 363 date: Thu Jan 01 00:00:00 1970 +0000
366 364 summary: 1.2
367 365
368 366 changeset: 6:7373c1169842
369 367 user: test
370 368 date: Thu Jan 01 00:00:00 1970 +0000
371 369 summary: 1.3
372 370
373 371 changeset: 7:a6a34bfa0076
374 372 user: test
375 373 date: Thu Jan 01 00:00:00 1970 +0000
376 374 summary: 1.3m
377 375
378 376 changeset: 8:aa35859c02ea
379 377 tag: tip
380 378 parent: 3:eebf5a27f8ca
381 379 user: test
382 380 date: Thu Jan 01 00:00:00 1970 +0000
383 381 summary: 0.3m
384 382
385 383
386 384 Outgoing -R does-not-exist.hg vs partial2 in partial
387 385
388 386 $ hg -R bundle://../does-not-exist.hg outgoing ../partial2
389 abort: *: ../does-not-exist.hg (glob)
387 abort: *../does-not-exist.hg* (glob)
390 388 [255]
391 389 $ cd ..
392 390
393 391 Direct clone from bundle (all-history)
394 392
395 393 $ hg clone full.hg full-clone
396 394 requesting all changes
397 395 adding changesets
398 396 adding manifests
399 397 adding file changes
400 398 added 9 changesets with 7 changes to 4 files (+1 heads)
401 399 updating to branch default
402 400 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
403 401 $ hg -R full-clone heads
404 402 changeset: 8:aa35859c02ea
405 403 tag: tip
406 404 parent: 3:eebf5a27f8ca
407 405 user: test
408 406 date: Thu Jan 01 00:00:00 1970 +0000
409 407 summary: 0.3m
410 408
411 409 changeset: 7:a6a34bfa0076
412 410 user: test
413 411 date: Thu Jan 01 00:00:00 1970 +0000
414 412 summary: 1.3m
415 413
416 414 $ rm -r full-clone
417 415
418 416 When cloning from a non-copiable repository into '', do not
419 417 recurse infinitely (issue 2528)
420 418
421 419 $ hg clone full.hg ''
422 420 abort: * (glob)
423 421 [255]
424 422
425 423 test for http://mercurial.selenic.com/bts/issue216
426 424
427 425 Unbundle incremental bundles into fresh empty in one go
428 426
429 427 $ rm -r empty
430 428 $ hg init empty
431 429 $ hg -R test bundle --base null -r 0 ../0.hg
432 430 1 changesets found
433 431 $ hg -R test bundle --base 0 -r 1 ../1.hg
434 432 1 changesets found
435 433 $ hg -R empty unbundle -u ../0.hg ../1.hg
436 434 adding changesets
437 435 adding manifests
438 436 adding file changes
439 437 added 1 changesets with 1 changes to 1 files
440 438 adding changesets
441 439 adding manifests
442 440 adding file changes
443 441 added 1 changesets with 1 changes to 1 files
444 442 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
445 443
446 444 test for 540d1059c802
447 445
448 446 test for 540d1059c802
449 447
450 448 $ hg init orig
451 449 $ cd orig
452 450 $ echo foo > foo
453 451 $ hg add foo
454 452 $ hg ci -m 'add foo'
455 453
456 454 $ hg clone . ../copy
457 455 updating to branch default
458 456 1 files updated, 0 files merged, 0 files removed, 0 files unresolved
459 457 $ hg tag foo
460 458
461 459 $ cd ../copy
462 460 $ echo >> foo
463 461 $ hg ci -m 'change foo'
464 462 $ hg bundle ../bundle.hg ../orig
465 463 searching for changes
466 464 1 changesets found
467 465
468 466 $ cd ../orig
469 467 $ hg incoming ../bundle.hg
470 468 comparing with ../bundle.hg
471 469 searching for changes
472 470 changeset: 2:ed1b79f46b9a
473 471 tag: tip
474 472 parent: 0:bbd179dfa0a7
475 473 user: test
476 474 date: Thu Jan 01 00:00:00 1970 +0000
477 475 summary: change foo
478 476
479 477 $ cd ..
480 478
481 479 test bundle with # in the filename (issue2154):
482 480
483 481 $ cp bundle.hg 'test#bundle.hg'
484 482 $ cd orig
485 483 $ hg incoming '../test#bundle.hg'
486 484 comparing with ../test
487 485 abort: unknown revision 'bundle.hg'!
488 486 [255]
489 487
490 488 note that percent encoding is not handled:
491 489
492 490 $ hg incoming ../test%23bundle.hg
493 491 abort: repository ../test%23bundle.hg not found!
494 492 [255]
495 493 $ cd ..
496 494
497 495 test for http://mercurial.selenic.com/bts/issue1144
498 496
499 497 test that verify bundle does not traceback
500 498
501 499 partial history bundle, fails w/ unkown parent
502 500
503 501 $ hg -R bundle.hg verify
504 502 abort: 00changelog.i@bbd179dfa0a7: unknown parent!
505 503 [255]
506 504
507 505 full history bundle, refuses to verify non-local repo
508 506
509 507 $ hg -R all.hg verify
510 508 abort: cannot verify bundle or remote repos
511 509 [255]
512 510
513 511 but, regular verify must continue to work
514 512
515 513 $ hg -R orig verify
516 514 checking changesets
517 515 checking manifests
518 516 crosschecking files in changesets and manifests
519 517 checking files
520 518 2 files, 2 changesets, 2 total revisions
521 519
522 520 diff against bundle
523 521
524 522 $ hg init b
525 523 $ cd b
526 524 $ hg -R ../all.hg diff -r tip
527 525 diff -r aa35859c02ea anotherfile
528 526 --- a/anotherfile Thu Jan 01 00:00:00 1970 +0000
529 527 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
530 528 @@ -1,4 +0,0 @@
531 529 -0
532 530 -1
533 531 -2
534 532 -3
535 533 $ cd ..
536 534
537 535 bundle single branch
538 536
539 537 $ hg init branchy
540 538 $ cd branchy
541 539 $ echo a >a
542 540 $ echo x >x
543 541 $ hg ci -Ama
544 542 adding a
545 543 adding x
546 544 $ echo c >c
547 545 $ echo xx >x
548 546 $ hg ci -Amc
549 547 adding c
550 548 $ echo c1 >c1
551 549 $ hg ci -Amc1
552 550 adding c1
553 551 $ hg up 0
554 552 1 files updated, 0 files merged, 2 files removed, 0 files unresolved
555 553 $ echo b >b
556 554 $ hg ci -Amb
557 555 adding b
558 556 created new head
559 557 $ echo b1 >b1
560 558 $ echo xx >x
561 559 $ hg ci -Amb1
562 560 adding b1
563 561 $ hg clone -q -r2 . part
564 562
565 563 == bundling via incoming
566 564
567 565 $ hg in -R part --bundle incoming.hg --template "{node}\n" .
568 566 comparing with .
569 567 searching for changes
570 568 1a38c1b849e8b70c756d2d80b0b9a3ac0b7ea11a
571 569 057f4db07f61970e1c11e83be79e9d08adc4dc31
572 570
573 571 == bundling
574 572
575 573 $ hg bundle bundle.hg part --debug
576 574 query 1; heads
577 575 searching for changes
578 576 all remote heads known locally
579 577 2 changesets found
580 578 list of changesets:
581 579 1a38c1b849e8b70c756d2d80b0b9a3ac0b7ea11a
582 580 057f4db07f61970e1c11e83be79e9d08adc4dc31
583 581 bundling: 1/2 changesets (50.00%)
584 582 bundling: 2/2 changesets (100.00%)
585 583 bundling: 1/2 manifests (50.00%)
586 584 bundling: 2/2 manifests (100.00%)
587 585 bundling: b 1/3 files (33.33%)
588 586 bundling: b1 2/3 files (66.67%)
589 587 bundling: x 3/3 files (100.00%)
590 588
591 589 == Test for issue3441
592 590
593 591 $ hg clone -q -r0 . part2
594 592 $ hg -q -R part2 pull bundle.hg
595 593 $ hg -R part2 verify
596 594 checking changesets
597 595 checking manifests
598 596 crosschecking files in changesets and manifests
599 597 checking files
600 598 4 files, 3 changesets, 5 total revisions
General Comments 0
You need to be logged in to leave comments. Login now