test-bundle.t
1118 lines
| 31.8 KiB
| text/troff
|
Tads3Lexer
/ tests / test-bundle.t
Martin Geisler
|
r11870 | Setting up test | ||
$ hg init test | ||||
$ cd test | ||||
$ echo 0 > afile | ||||
$ hg add afile | ||||
Martin Geisler
|
r12156 | $ hg commit -m "0.0" | ||
Martin Geisler
|
r11870 | $ echo 1 >> afile | ||
Martin Geisler
|
r12156 | $ hg commit -m "0.1" | ||
Martin Geisler
|
r11870 | $ echo 2 >> afile | ||
Martin Geisler
|
r12156 | $ hg commit -m "0.2" | ||
Martin Geisler
|
r11870 | $ echo 3 >> afile | ||
Martin Geisler
|
r12156 | $ hg commit -m "0.3" | ||
Martin Geisler
|
r11870 | $ hg update -C 0 | ||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ echo 1 >> afile | ||||
Martin Geisler
|
r12156 | $ hg commit -m "1.1" | ||
Martin Geisler
|
r11870 | created new head | ||
$ echo 2 >> afile | ||||
Martin Geisler
|
r12156 | $ hg commit -m "1.2" | ||
Martin Geisler
|
r11870 | $ echo "a line" > fred | ||
$ echo 3 >> afile | ||||
$ hg add fred | ||||
Martin Geisler
|
r12156 | $ hg commit -m "1.3" | ||
Martin Geisler
|
r11870 | $ hg mv afile adifferentfile | ||
Martin Geisler
|
r12156 | $ hg commit -m "1.3m" | ||
Martin Geisler
|
r11870 | $ hg update -C 3 | ||
1 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||||
$ hg mv afile anotherfile | ||||
Martin Geisler
|
r12156 | $ hg commit -m "0.3m" | ||
Raphaël Gomès
|
r50720 | $ hg verify -q | ||
Martin Geisler
|
r11870 | $ cd .. | ||
$ hg init empty | ||||
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
|
r15991 | Bundle and phase | ||
$ hg -R test phase --force --secret 0 | ||||
$ hg -R test bundle phase.hg empty | ||||
searching for changes | ||||
Matt Mackall
|
r15993 | no changes found (ignored 9 secret changesets) | ||
Alain Leufroy <alain.leufroyATgmailMYDOTcom>
|
r15991 | [1] | ||
$ hg -R test phase --draft -r 'head()' | ||||
Martin Geisler
|
r11870 | Bundle --all | ||
$ hg -R test bundle --all all.hg | ||||
9 changesets found | ||||
Bundle test to full.hg | ||||
$ hg -R test bundle full.hg empty | ||||
searching for changes | ||||
9 changesets found | ||||
Unbundle full.hg in test | ||||
$ hg -R test unbundle full.hg | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 0 changesets with 0 changes to 4 files | ||||
(run 'hg update' to get a working copy) | ||||
Verify empty | ||||
$ hg -R empty heads | ||||
Matt Mackall
|
r12316 | [1] | ||
Raphaël Gomès
|
r50720 | $ hg -R empty verify -q | ||
Martin Geisler
|
r11870 | |||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Martin Geisler
|
r11870 | Pull full.hg into test (using --cwd) | ||
$ hg --cwd test pull ../full.hg | ||||
pulling from ../full.hg | ||||
searching for changes | ||||
no changes found | ||||
Piotr Klecha
|
r20576 | Verify that there are no leaked temporary files after pull (issue2797) | ||
$ ls test/.hg | grep .hg10un | ||||
[1] | ||||
Martin Geisler
|
r11870 | Pull full.hg into empty (using --cwd) | ||
$ hg --cwd empty pull ../full.hg | ||||
pulling from ../full.hg | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Martin Geisler
|
r11870 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
Rollback empty | ||||
$ hg -R empty rollback | ||||
Gilles Moris
|
r13446 | repository tip rolled back to revision -1 (undo pull) | ||
Martin Geisler
|
r11870 | |||
Pull full.hg into empty again (using --cwd) | ||||
$ hg --cwd empty pull ../full.hg | ||||
pulling from ../full.hg | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Martin Geisler
|
r11870 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
Pull full.hg into test (using -R) | ||||
$ hg -R test pull full.hg | ||||
pulling from full.hg | ||||
searching for changes | ||||
no changes found | ||||
Pull full.hg into empty (using -R) | ||||
$ hg -R empty pull full.hg | ||||
pulling from full.hg | ||||
searching for changes | ||||
no changes found | ||||
Rollback empty | ||||
$ hg -R empty rollback | ||||
Gilles Moris
|
r13446 | repository tip rolled back to revision -1 (undo pull) | ||
Martin Geisler
|
r11870 | |||
Pull full.hg into empty again (using -R) | ||||
$ hg -R empty pull full.hg | ||||
pulling from full.hg | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Martin Geisler
|
r11870 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
Log -R full.hg in fresh empty | ||||
$ rm -r empty | ||||
$ hg init empty | ||||
$ cd empty | ||||
$ hg -R bundle://../full.hg log | ||||
Martin Geisler
|
r12156 | changeset: 8:aa35859c02ea | ||
Martin Geisler
|
r11870 | tag: tip | ||
Martin Geisler
|
r12156 | parent: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3m | ||
Martin Geisler
|
r12156 | changeset: 7:a6a34bfa0076 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3m | ||
Martin Geisler
|
r12156 | changeset: 6:7373c1169842 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3 | ||
Martin Geisler
|
r12156 | changeset: 5:1bb50a9436a7 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.2 | ||
Martin Geisler
|
r12156 | changeset: 4:095197eb4973 | ||
parent: 0:f9ee2f85a263 | ||||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.1 | ||
Martin Geisler
|
r12156 | changeset: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3 | ||
Martin Geisler
|
r12156 | changeset: 2:e38ba6f5b7e0 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.2 | ||
Martin Geisler
|
r12156 | changeset: 1:34c2bf6b0626 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.1 | ||
Martin Geisler
|
r12156 | changeset: 0:f9ee2f85a263 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.0 | ||
Adrian Buehlmann
|
r13382 | Make sure bundlerepo doesn't leak tempfiles (issue2491) | ||
$ ls .hg | ||||
00changelog.i | ||||
cache | ||||
requires | ||||
store | ||||
Boris Feld
|
r40825 | wcache | ||
Martin Geisler
|
r11870 | |||
Pull ../full.hg into empty (with hook) | ||||
FUJIWARA Katsunori
|
r30234 | $ cat >> .hg/hgrc <<EOF | ||
> [hooks] | ||||
Boris Feld
|
r41786 | > changegroup = sh -c "printenv.py --line changegroup" | ||
FUJIWARA Katsunori
|
r30234 | > EOF | ||
Martin Geisler
|
r11870 | |||
doesn't work (yet ?) | ||||
Matt Harbison
|
r41878 | NOTE: msys is mangling the URL below | ||
Martin Geisler
|
r11870 | |||
hg -R bundle://../full.hg verify | ||||
$ hg pull bundle://../full.hg | ||||
Brodie Rao
|
r13818 | pulling from bundle:../full.hg | ||
Martin Geisler
|
r11870 | requesting all changes | ||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Boris Feld
|
r41786 | changegroup hook: HG_HOOKNAME=changegroup | ||
HG_HOOKTYPE=changegroup | ||||
HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 | ||||
HG_NODE_LAST=aa35859c02ea8bd48da5da68cd2740ac71afcbaf | ||||
HG_SOURCE=pull | ||||
HG_TXNID=TXN:$ID$ | ||||
r42062 | HG_TXNNAME=pull | |||
Matt Harbison
|
r42095 | bundle:../full.hg (no-msys !) | ||
bundle;../full.hg (msys !) | ||||
Matt Harbison
|
r41878 | HG_URL=bundle:../full.hg (no-msys !) | ||
HG_URL=bundle;../full.hg (msys !) | ||||
Boris Feld
|
r41786 | |||
Martin Geisler
|
r11870 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
Rollback empty | ||||
$ hg rollback | ||||
Gilles Moris
|
r13446 | repository tip rolled back to revision -1 (undo pull) | ||
Martin Geisler
|
r11870 | $ cd .. | ||
Log -R bundle:empty+full.hg | ||||
$ hg -R bundle:empty+full.hg log --template="{rev} "; echo "" | ||||
8 7 6 5 4 3 2 1 0 | ||||
Pull full.hg into empty again (using -R; with hook) | ||||
$ hg -R empty pull full.hg | ||||
pulling from full.hg | ||||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Boris Feld
|
r41786 | changegroup hook: HG_HOOKNAME=changegroup | ||
HG_HOOKTYPE=changegroup | ||||
HG_NODE=f9ee2f85a263049e9ae6d37a0e67e96194ffb735 | ||||
HG_NODE_LAST=aa35859c02ea8bd48da5da68cd2740ac71afcbaf | ||||
HG_SOURCE=pull | ||||
HG_TXNID=TXN:$ID$ | ||||
r42062 | HG_TXNNAME=pull | |||
bundle:empty+full.hg | ||||
Boris Feld
|
r41786 | HG_URL=bundle:empty+full.hg | ||
Martin Geisler
|
r11870 | (run 'hg heads' to see heads, 'hg merge' to merge) | ||
Gregory Szorc
|
r37444 | #endif | ||
Gregory Szorc
|
r26757 | Cannot produce streaming clone bundles with "hg bundle" | ||
$ hg -R test bundle -t packed1 packed.hg | ||||
abort: packed bundles cannot be produced by "hg bundle" | ||||
timeless
|
r28961 | (use 'hg debugcreatestreamclonebundle') | ||
Martin von Zweigbergk
|
r46431 | [10] | ||
Gregory Szorc
|
r26757 | |||
packed1 is produced properly | ||||
r49490 | ||||
#if reporevlogstore rust | ||||
Gregory Szorc
|
r37444 | |||
Gregory Szorc
|
r26757 | $ hg -R test debugcreatestreamclonebundle packed.hg | ||
r52074 | writing 2665 bytes for 6 files (no-rust !) | |||
writing 2919 bytes for 9 files (rust !) | ||||
r49542 | bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog | |||
r49490 | ||||
$ f -B 64 --size --sha1 --hexdump packed.hg | ||||
r52074 | packed.hg: size=2865, sha1=353d10311f4befa195d9a1ca4b8e26518115c702 (no-rust !) | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 06 00 00 |HGS1UN..........| (no-rust !) | ||||
0010: 00 00 00 00 0a 69 00 3b 67 65 6e 65 72 61 6c 64 |.....i.;generald| (no-rust !) | ||||
Raphaël Gomès
|
r53060 | packed.hg: size=3181, sha1=3e865df183d388222969c5b19c844dd8697c85c6 (rust !) | ||
r52074 | 0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 09 00 00 |HGS1UN..........| (rust !) | |||
0010: 00 00 00 00 0b 67 00 3b 67 65 6e 65 72 61 6c 64 |.....g.;generald| (rust !) | ||||
r49542 | 0020: 65 6c 74 61 2c 72 65 76 6c 6f 67 2d 63 6f 6d 70 |elta,revlog-comp| | |||
0030: 72 65 73 73 69 6f 6e 2d 7a 73 74 64 2c 72 65 76 |ression-zstd,rev| | ||||
r49490 | $ hg debugbundle --spec packed.hg | |||
r49542 | none-packed1;requirements%3Dgeneraldelta%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog | |||
r49490 | #endif | |||
#if reporevlogstore no-rust zstd | ||||
$ hg -R test debugcreatestreamclonebundle packed.hg | ||||
r52074 | writing 2665 bytes for 7 files | |||
r49498 | bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog | |||
Gregory Szorc
|
r26757 | |||
$ f -B 64 --size --sha1 --hexdump packed.hg | ||||
r52074 | packed.hg: size=2882, sha1=6525b07e6bfced4b6c2319cb58c6ff76ca72fa13 | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 07 00 00 |HGS1UN..........| | ||||
r49498 | 0010: 00 00 00 00 0a 69 00 3b 67 65 6e 65 72 61 6c 64 |.....i.;generald| | |||
0020: 65 6c 74 61 2c 72 65 76 6c 6f 67 2d 63 6f 6d 70 |elta,revlog-comp| | ||||
0030: 72 65 73 73 69 6f 6e 2d 7a 73 74 64 2c 72 65 76 |ression-zstd,rev| | ||||
r49490 | $ hg debugbundle --spec packed.hg | |||
r49498 | none-packed1;requirements%3Dgeneraldelta%2Crevlog-compression-zstd%2Crevlogv1%2Csparserevlog | |||
r49490 | #endif | |||
#if reporevlogstore no-rust no-zstd | ||||
Gregory Szorc
|
r26757 | |||
r49490 | $ hg -R test debugcreatestreamclonebundle packed.hg | |||
r52074 | writing 2664 bytes for 7 files | |||
r49490 | bundle requirements: generaldelta, revlogv1, sparserevlog | |||
$ f -B 64 --size --sha1 --hexdump packed.hg | ||||
r52074 | packed.hg: size=2857, sha1=3a7353323915b095baa6f2ee0a5aed588f11f5f0 | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 07 00 00 |HGS1UN..........| | ||||
r49490 | 0010: 00 00 00 00 0a 68 00 23 67 65 6e 65 72 61 6c 64 |.....h.#generald| | |||
0020: 65 6c 74 61 2c 72 65 76 6c 6f 67 76 31 2c 73 70 |elta,revlogv1,sp| | ||||
0030: 61 72 73 65 72 65 76 6c 6f 67 00 64 61 74 61 2f |arserevlog.data/| | ||||
Gregory Szorc
|
r27885 | $ hg debugbundle --spec packed.hg | ||
r49490 | none-packed1;requirements%3Dgeneraldelta%2Crevlogv1%2Csparserevlog | |||
#endif | ||||
#if reporevlogstore | ||||
Gregory Szorc
|
r27885 | |||
Gregory Szorc
|
r30013 | generaldelta requirement is not listed in stream clone bundles unless used | ||
Gregory Szorc
|
r26757 | |||
Gregory Szorc
|
r30013 | $ hg --config format.usegeneraldelta=false init testnongd | ||
$ cd testnongd | ||||
Gregory Szorc
|
r26757 | $ touch foo | ||
$ hg -q commit -A -m initial | ||||
$ cd .. | ||||
r49490 | ||||
#endif | ||||
#if reporevlogstore rust | ||||
Gregory Szorc
|
r30013 | $ hg -R testnongd debugcreatestreamclonebundle packednongd.hg | ||
r52074 | writing 301 bytes for 3 files (no-rust !) | |||
writing 427 bytes for 6 files (rust !) | ||||
r49542 | bundle requirements: revlog-compression-zstd, revlogv1 | |||
r49490 | ||||
$ f -B 64 --size --sha1 --hexdump packednongd.hg | ||||
r52074 | packednongd.hg: size=407, sha1=0b8714422b785ba8eb98c916b41ffd5fb994c9b5 (no-rust !) | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 03 00 00 |HGS1UN..........| (no-rust !) | ||||
0010: 00 00 00 00 01 2d 00 21 72 65 76 6c 6f 67 2d 63 |.....-.!revlog-c| (no-rust !) | ||||
packednongd.hg: size=593, sha1=1ad0cbea11b5dd7b0437e54ae20fc5f8df118521 (rust !) | ||||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 06 00 00 |HGS1UN..........| (rust !) | ||||
0010: 00 00 00 00 01 ab 00 21 72 65 76 6c 6f 67 2d 63 |.......!revlog-c| (rust !) | ||||
r49542 | 0020: 6f 6d 70 72 65 73 73 69 6f 6e 2d 7a 73 74 64 2c |ompression-zstd,| | |||
0030: 72 65 76 6c 6f 67 76 31 00 64 61 74 61 2f 66 6f |revlogv1.data/fo| | ||||
r49490 | ||||
$ hg debugbundle --spec packednongd.hg | ||||
r49542 | none-packed1;requirements%3Drevlog-compression-zstd%2Crevlogv1 | |||
r49490 | ||||
#endif | ||||
#if reporevlogstore no-rust zstd | ||||
$ hg -R testnongd debugcreatestreamclonebundle packednongd.hg | ||||
r52074 | writing 301 bytes for 4 files | |||
r49498 | bundle requirements: revlog-compression-zstd, revlogv1 | |||
Gregory Szorc
|
r26757 | |||
Gregory Szorc
|
r30013 | $ f -B 64 --size --sha1 --hexdump packednongd.hg | ||
r52074 | packednongd.hg: size=423, sha1=4269c89cf64b6a4377be75a3983771c4153362bf | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 04 00 00 |HGS1UN..........| | ||||
r49498 | 0010: 00 00 00 00 01 2d 00 21 72 65 76 6c 6f 67 2d 63 |.....-.!revlog-c| | |||
0020: 6f 6d 70 72 65 73 73 69 6f 6e 2d 7a 73 74 64 2c |ompression-zstd,| | ||||
0030: 72 65 76 6c 6f 67 76 31 00 64 61 74 61 2f 66 6f |revlogv1.data/fo| | ||||
Gregory Szorc
|
r26757 | |||
Gregory Szorc
|
r30013 | $ hg debugbundle --spec packednongd.hg | ||
r49498 | none-packed1;requirements%3Drevlog-compression-zstd%2Crevlogv1 | |||
r49490 | ||||
#endif | ||||
#if reporevlogstore no-rust no-zstd | ||||
$ hg -R testnongd debugcreatestreamclonebundle packednongd.hg | ||||
r52074 | writing 301 bytes for 4 files | |||
r49490 | bundle requirements: revlogv1 | |||
$ f -B 64 --size --sha1 --hexdump packednongd.hg | ||||
r52074 | packednongd.hg: size=399, sha1=99bb89decfc6674a3cf2cc87accc8c5332ede7fd | |||
0000: 48 47 53 31 55 4e 00 00 00 00 00 00 00 04 00 00 |HGS1UN..........| | ||||
r49490 | 0010: 00 00 00 00 01 2d 00 09 72 65 76 6c 6f 67 76 31 |.....-..revlogv1| | |||
0020: 00 64 61 74 61 2f 66 6f 6f 2e 69 00 36 34 0a 00 |.data/foo.i.64..| | ||||
0030: 01 00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 |................| | ||||
$ hg debugbundle --spec packednongd.hg | ||||
none-packed1;requirements%3Drevlogv1 | ||||
#endif | ||||
#if reporevlogstore | ||||
Gregory Szorc
|
r27885 | |||
Gregory Szorc
|
r32745 | Warning emitted when packed bundles contain secret changesets | ||
$ hg init testsecret | ||||
$ cd testsecret | ||||
$ touch foo | ||||
$ hg -q commit -A -m initial | ||||
$ hg phase --force --secret -r . | ||||
$ cd .. | ||||
r49490 | #endif | |||
#if reporevlogstore rust | ||||
Gregory Szorc
|
r32745 | $ hg -R testsecret debugcreatestreamclonebundle packedsecret.hg | ||
(warning: stream clone bundle will contain secret revisions) | ||||
r52074 | writing 301 bytes for 3 files (no-rust !) | |||
writing 427 bytes for 6 files (rust !) | ||||
r49542 | bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog | |||
r49490 | ||||
#endif | ||||
#if reporevlogstore no-rust zstd | ||||
$ hg -R testsecret debugcreatestreamclonebundle packedsecret.hg | ||||
(warning: stream clone bundle will contain secret revisions) | ||||
r52074 | writing 301 bytes for 4 files | |||
r49498 | bundle requirements: generaldelta, revlog-compression-zstd, revlogv1, sparserevlog | |||
r49490 | ||||
#endif | ||||
#if reporevlogstore no-rust no-zstd | ||||
$ hg -R testsecret debugcreatestreamclonebundle packedsecret.hg | ||||
(warning: stream clone bundle will contain secret revisions) | ||||
r52074 | writing 301 bytes for 4 files | |||
r49490 | bundle requirements: generaldelta, revlogv1, sparserevlog | |||
#endif | ||||
#if reporevlogstore | ||||
Gregory Szorc
|
r32745 | |||
Gregory Szorc
|
r26758 | Unpacking packed1 bundles with "hg unbundle" isn't allowed | ||
$ hg init packed | ||||
$ hg -R packed unbundle packed.hg | ||||
abort: packed bundles cannot be applied with "hg unbundle" | ||||
(use "hg debugapplystreamclonebundle") | ||||
Martin von Zweigbergk
|
r46431 | [10] | ||
Gregory Szorc
|
r26758 | |||
packed1 can be consumed from debug command | ||||
FUJIWARA Katsunori
|
r29919 | (this also confirms that streamclone-ed changes are visible via | ||
@filecache properties to in-process procedures before closing | ||||
transaction) | ||||
$ cat > $TESTTMP/showtip.py <<EOF | ||||
> | ||||
> def showtip(ui, repo, hooktype, **kwargs): | ||||
Yuya Nishihara
|
r38615 | > ui.warn(b'%s: %s\n' % (hooktype, repo[b'tip'].hex()[:12])) | ||
FUJIWARA Katsunori
|
r29919 | > | ||
> def reposetup(ui, repo): | ||||
> # this confirms (and ensures) that (empty) 00changelog.i | ||||
> # before streamclone is already cached as repo.changelog | ||||
Yuya Nishihara
|
r38615 | > ui.setconfig(b'hooks', b'pretxnopen.showtip', showtip) | ||
FUJIWARA Katsunori
|
r29919 | > | ||
> # this confirms that streamclone-ed changes are visible to | ||||
> # in-process procedures before closing transaction | ||||
Yuya Nishihara
|
r38615 | > ui.setconfig(b'hooks', b'pretxnclose.showtip', showtip) | ||
FUJIWARA Katsunori
|
r29919 | > | ||
> # this confirms that streamclone-ed changes are still visible | ||||
> # after closing transaction | ||||
Yuya Nishihara
|
r38615 | > ui.setconfig(b'hooks', b'txnclose.showtip', showtip) | ||
FUJIWARA Katsunori
|
r29919 | > EOF | ||
$ cat >> $HGRCPATH <<EOF | ||||
> [extensions] | ||||
> showtip = $TESTTMP/showtip.py | ||||
> EOF | ||||
Gregory Szorc
|
r26758 | $ hg -R packed debugapplystreamclonebundle packed.hg | ||
r52074 | 7 files to transfer, 2.60 KB of data (no-rust !) | |||
9 files to transfer, 2.85 KB of data (rust !) | ||||
FUJIWARA Katsunori
|
r29919 | pretxnopen: 000000000000 | ||
pretxnclose: aa35859c02ea | ||||
r52074 | transferred 2.60 KB in * seconds (* */sec) (glob) (no-rust !) | |||
transferred 2.85 KB in * seconds (* */sec) (glob) (rust !) | ||||
FUJIWARA Katsunori
|
r29919 | txnclose: aa35859c02ea | ||
(for safety, confirm visibility of streamclone-ed changes by another | ||||
process, too) | ||||
$ hg -R packed tip -T "{node|short}\n" | ||||
aa35859c02ea | ||||
$ cat >> $HGRCPATH <<EOF | ||||
> [extensions] | ||||
> showtip = ! | ||||
> EOF | ||||
Gregory Szorc
|
r26758 | |||
Does not work on non-empty repo | ||||
$ hg -R packed debugapplystreamclonebundle packed.hg | ||||
abort: cannot apply stream clone bundle on non-empty repo | ||||
[255] | ||||
Gregory Szorc
|
r37444 | #endif | ||
Martin Geisler
|
r11870 | Create partial clones | ||
$ rm -r empty | ||||
$ hg init empty | ||||
$ hg clone -r 3 test partial | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 4 changesets with 4 changes to 1 files | ||||
Denis Laxalde
|
r34662 | new changesets f9ee2f85a263:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | updating to branch default | ||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg clone partial partial2 | ||||
updating to branch default | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ cd partial | ||||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Martin Geisler
|
r11870 | Log -R full.hg in partial | ||
Eric Sumner
|
r23632 | $ hg -R bundle://../full.hg log -T phases | ||
Martin Geisler
|
r12156 | changeset: 8:aa35859c02ea | ||
Martin Geisler
|
r11870 | tag: tip | ||
Eric Sumner
|
r23632 | phase: draft | ||
Martin Geisler
|
r12156 | parent: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3m | ||
Martin Geisler
|
r12156 | changeset: 7:a6a34bfa0076 | ||
Eric Sumner
|
r23632 | phase: draft | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3m | ||
Martin Geisler
|
r12156 | changeset: 6:7373c1169842 | ||
Eric Sumner
|
r23632 | phase: draft | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3 | ||
Martin Geisler
|
r12156 | changeset: 5:1bb50a9436a7 | ||
Eric Sumner
|
r23632 | phase: draft | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.2 | ||
Martin Geisler
|
r12156 | changeset: 4:095197eb4973 | ||
Eric Sumner
|
r23632 | phase: draft | ||
Martin Geisler
|
r12156 | parent: 0:f9ee2f85a263 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.1 | ||
Martin Geisler
|
r12156 | changeset: 3:eebf5a27f8ca | ||
Eric Sumner
|
r23632 | phase: public | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3 | ||
Martin Geisler
|
r12156 | changeset: 2:e38ba6f5b7e0 | ||
Eric Sumner
|
r23632 | phase: public | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.2 | ||
Martin Geisler
|
r12156 | changeset: 1:34c2bf6b0626 | ||
Eric Sumner
|
r23632 | phase: public | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.1 | ||
Martin Geisler
|
r12156 | changeset: 0:f9ee2f85a263 | ||
Eric Sumner
|
r23632 | phase: public | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.0 | ||
Incoming full.hg in partial | ||||
$ hg incoming bundle://../full.hg | ||||
Brodie Rao
|
r13818 | comparing with bundle:../full.hg | ||
Martin Geisler
|
r11870 | searching for changes | ||
Martin Geisler
|
r12156 | changeset: 4:095197eb4973 | ||
parent: 0:f9ee2f85a263 | ||||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.1 | ||
Martin Geisler
|
r12156 | changeset: 5:1bb50a9436a7 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.2 | ||
Martin Geisler
|
r12156 | changeset: 6:7373c1169842 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3 | ||
Martin Geisler
|
r12156 | changeset: 7:a6a34bfa0076 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3m | ||
Martin Geisler
|
r12156 | changeset: 8:aa35859c02ea | ||
Martin Geisler
|
r11870 | tag: tip | ||
Martin Geisler
|
r12156 | parent: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3m | ||
Outgoing -R full.hg vs partial2 in partial | ||||
$ hg -R bundle://../full.hg outgoing ../partial2 | ||||
comparing with ../partial2 | ||||
searching for changes | ||||
Martin Geisler
|
r12156 | changeset: 4:095197eb4973 | ||
parent: 0:f9ee2f85a263 | ||||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.1 | ||
Martin Geisler
|
r12156 | changeset: 5:1bb50a9436a7 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.2 | ||
Martin Geisler
|
r12156 | changeset: 6:7373c1169842 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3 | ||
Martin Geisler
|
r12156 | changeset: 7:a6a34bfa0076 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3m | ||
Martin Geisler
|
r12156 | changeset: 8:aa35859c02ea | ||
Martin Geisler
|
r11870 | tag: tip | ||
Martin Geisler
|
r12156 | parent: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3m | ||
Outgoing -R does-not-exist.hg vs partial2 in partial | ||||
$ hg -R bundle://../does-not-exist.hg outgoing ../partial2 | ||||
Adrian Buehlmann
|
r16903 | abort: *../does-not-exist.hg* (glob) | ||
Matt Mackall
|
r12316 | [255] | ||
Gregory Szorc
|
r37444 | |||
#endif | ||||
Martin Geisler
|
r11870 | $ cd .. | ||
Mads Kiilerich
|
r17015 | hide outer repo | ||
$ hg init | ||||
Martin Geisler
|
r11870 | Direct clone from bundle (all-history) | ||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Martin Geisler
|
r11870 | $ hg clone full.hg full-clone | ||
requesting all changes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 9 changesets with 7 changes to 4 files (+1 heads) | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263:aa35859c02ea (9 drafts) | ||
Martin Geisler
|
r11870 | updating to branch default | ||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg -R full-clone heads | ||||
Martin Geisler
|
r12156 | changeset: 8:aa35859c02ea | ||
Martin Geisler
|
r11870 | tag: tip | ||
Martin Geisler
|
r12156 | parent: 3:eebf5a27f8ca | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 0.3m | ||
Martin Geisler
|
r12156 | changeset: 7:a6a34bfa0076 | ||
Martin Geisler
|
r11870 | user: test | ||
Martin Geisler
|
r12156 | date: Thu Jan 01 00:00:00 1970 +0000 | ||
Martin Geisler
|
r11870 | summary: 1.3m | ||
$ rm -r full-clone | ||||
Nicolas Dumazet
|
r13053 | When cloning from a non-copiable repository into '', do not | ||
Matt Mackall
|
r22183 | recurse infinitely (issue2528) | ||
Nicolas Dumazet
|
r13053 | |||
$ hg clone full.hg '' | ||||
FUJIWARA Katsunori
|
r17159 | abort: empty destination path is not valid | ||
Martin von Zweigbergk
|
r46451 | [10] | ||
Nicolas Dumazet
|
r13053 | |||
Matt Mackall
|
r26420 | test for https://bz.mercurial-scm.org/216 | ||
Martin Geisler
|
r11870 | |||
Unbundle incremental bundles into fresh empty in one go | ||||
$ rm -r empty | ||||
$ hg init empty | ||||
$ hg -R test bundle --base null -r 0 ../0.hg | ||||
1 changesets found | ||||
r50305 | $ hg -R test bundle --exact -r 1 ../1.hg | |||
Martin Geisler
|
r11870 | 1 changesets found | ||
$ hg -R empty unbundle -u ../0.hg ../1.hg | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
Boris Feld
|
r39516 | new changesets f9ee2f85a263 (1 drafts) | ||
Martin Geisler
|
r11870 | adding changesets | ||
adding manifests | ||||
adding file changes | ||||
added 1 changesets with 1 changes to 1 files | ||||
Boris Feld
|
r39516 | new changesets 34c2bf6b0626 (1 drafts) | ||
Martin Geisler
|
r11870 | 1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||
Tomasz Kleczek
|
r17913 | View full contents of the bundle | ||
$ hg -R test bundle --base null -r 3 ../partial.hg | ||||
4 changesets found | ||||
$ cd test | ||||
$ hg -R ../../partial.hg log -r "bundle()" | ||||
changeset: 0:f9ee2f85a263 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0.0 | ||||
changeset: 1:34c2bf6b0626 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0.1 | ||||
changeset: 2:e38ba6f5b7e0 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0.2 | ||||
changeset: 3:eebf5a27f8ca | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0.3 | ||||
$ cd .. | ||||
Gregory Szorc
|
r37444 | #endif | ||
Martin Geisler
|
r11870 | |||
test for 540d1059c802 | ||||
$ hg init orig | ||||
$ cd orig | ||||
$ echo foo > foo | ||||
$ hg add foo | ||||
$ hg ci -m 'add foo' | ||||
$ hg clone . ../copy | ||||
updating to branch default | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
$ hg tag foo | ||||
$ cd ../copy | ||||
$ echo >> foo | ||||
$ hg ci -m 'change foo' | ||||
$ hg bundle ../bundle.hg ../orig | ||||
searching for changes | ||||
1 changesets found | ||||
Gregory Szorc
|
r37444 | $ cd .. | ||
#if repobundlerepo | ||||
$ cd orig | ||||
Martin Geisler
|
r11870 | $ hg incoming ../bundle.hg | ||
comparing with ../bundle.hg | ||||
searching for changes | ||||
changeset: 2:ed1b79f46b9a | ||||
tag: tip | ||||
parent: 0:bbd179dfa0a7 | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: change foo | ||||
$ cd .. | ||||
Brodie Rao
|
r13826 | test bundle with # in the filename (issue2154): | ||
$ cp bundle.hg 'test#bundle.hg' | ||||
$ cd orig | ||||
$ hg incoming '../test#bundle.hg' | ||||
comparing with ../test | ||||
Martin von Zweigbergk
|
r46518 | abort: unknown revision 'bundle.hg' | ||
Martin von Zweigbergk
|
r49191 | [10] | ||
Brodie Rao
|
r13826 | |||
note that percent encoding is not handled: | ||||
$ hg incoming ../test%23bundle.hg | ||||
Martin von Zweigbergk
|
r46518 | abort: repository ../test%23bundle.hg not found | ||
Brodie Rao
|
r13826 | [255] | ||
$ cd .. | ||||
Gregory Szorc
|
r37444 | #endif | ||
FUJIWARA Katsunori
|
r18701 | test to bundle revisions on the newly created branch (issue3828): | ||
$ hg -q clone -U test test-clone | ||||
$ cd test | ||||
$ hg -q branch foo | ||||
$ hg commit -m "create foo branch" | ||||
$ hg -q outgoing ../test-clone | ||||
9:b4f5acb1ee27 | ||||
$ hg -q bundle --branch foo foo.hg ../test-clone | ||||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
FUJIWARA Katsunori
|
r18701 | $ hg -R foo.hg -q log -r "bundle()" | ||
9:b4f5acb1ee27 | ||||
Gregory Szorc
|
r37444 | #endif | ||
FUJIWARA Katsunori
|
r18701 | |||
$ cd .. | ||||
Matt Mackall
|
r26420 | test for https://bz.mercurial-scm.org/1144 | ||
Martin Geisler
|
r11870 | |||
test that verify bundle does not traceback | ||||
Mads Kiilerich
|
r21024 | partial history bundle, fails w/ unknown parent | ||
Martin Geisler
|
r11870 | |||
$ hg -R bundle.hg verify | ||||
r47926 | abort: 00changelog@bbd179dfa0a71671c253b3ae0aa1513b60d199fa: unknown parent | |||
Martin von Zweigbergk
|
r46732 | [50] | ||
Martin Geisler
|
r11870 | |||
full history bundle, refuses to verify non-local repo | ||||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Martin Geisler
|
r11870 | $ hg -R all.hg verify | ||
abort: cannot verify bundle or remote repos | ||||
Matt Mackall
|
r12316 | [255] | ||
Gregory Szorc
|
r37444 | #endif | ||
Martin Geisler
|
r11870 | |||
but, regular verify must continue to work | ||||
Raphaël Gomès
|
r50720 | $ hg -R orig verify -q | ||
Martin Geisler
|
r11870 | |||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Martin Geisler
|
r11870 | diff against bundle | ||
$ hg init b | ||||
$ cd b | ||||
$ hg -R ../all.hg diff -r tip | ||||
Martin Geisler
|
r12156 | diff -r aa35859c02ea anotherfile | ||
--- a/anotherfile Thu Jan 01 00:00:00 1970 +0000 | ||||
Martin Geisler
|
r11870 | +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 | ||
@@ -1,4 +0,0 @@ | ||||
-0 | ||||
-1 | ||||
-2 | ||||
-3 | ||||
$ cd .. | ||||
Gregory Szorc
|
r37444 | #endif | ||
Martin Geisler
|
r11870 | |||
bundle single branch | ||||
$ hg init branchy | ||||
$ cd branchy | ||||
$ echo a >a | ||||
Sune Foldager
|
r16736 | $ echo x >x | ||
Martin Geisler
|
r11870 | $ hg ci -Ama | ||
adding a | ||||
Sune Foldager
|
r16736 | adding x | ||
$ echo c >c | ||||
$ echo xx >x | ||||
$ hg ci -Amc | ||||
adding c | ||||
$ echo c1 >c1 | ||||
$ hg ci -Amc1 | ||||
adding c1 | ||||
$ hg up 0 | ||||
1 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||||
Martin Geisler
|
r11870 | $ echo b >b | ||
$ hg ci -Amb | ||||
adding b | ||||
Sune Foldager
|
r16736 | created new head | ||
Martin Geisler
|
r11870 | $ echo b1 >b1 | ||
Sune Foldager
|
r16736 | $ echo xx >x | ||
Martin Geisler
|
r11870 | $ hg ci -Amb1 | ||
adding b1 | ||||
Sune Foldager
|
r16736 | $ hg clone -q -r2 . part | ||
Martin Geisler
|
r11870 | |||
== bundling via incoming | ||||
$ hg in -R part --bundle incoming.hg --template "{node}\n" . | ||||
comparing with . | ||||
searching for changes | ||||
Sune Foldager
|
r16736 | 1a38c1b849e8b70c756d2d80b0b9a3ac0b7ea11a | ||
057f4db07f61970e1c11e83be79e9d08adc4dc31 | ||||
Martin Geisler
|
r11870 | |||
== bundling | ||||
Pierre-Yves David
|
r25125 | $ hg bundle bundle.hg part --debug --config progress.debug=true | ||
Peter Arrenbrecht
|
r14164 | query 1; heads | ||
Martin Geisler
|
r11870 | searching for changes | ||
Peter Arrenbrecht
|
r14164 | all remote heads known locally | ||
Martin Geisler
|
r11870 | 2 changesets found | ||
list of changesets: | ||||
Sune Foldager
|
r16736 | 1a38c1b849e8b70c756d2d80b0b9a3ac0b7ea11a | ||
057f4db07f61970e1c11e83be79e9d08adc4dc31 | ||||
Boris Feld
|
r36983 | bundle2-output-bundle: "HG20", (1 params) 2 parts total | ||
Gregory Szorc
|
r29593 | bundle2-output-part: "changegroup" (params: 1 mandatory 1 advisory) streamed payload | ||
Gregory Szorc
|
r39275 | changesets: 1/2 chunks (50.00%) | ||
changesets: 2/2 chunks (100.00%) | ||||
manifests: 1/2 chunks (50.00%) | ||||
manifests: 2/2 chunks (100.00%) | ||||
files: b 1/3 files (33.33%) | ||||
files: b1 2/3 files (66.67%) | ||||
files: x 3/3 files (100.00%) | ||||
Boris Feld
|
r37920 | bundle2-output-part: "cache:rev-branch-cache" (advisory) streamed payload | ||
Sune Foldager
|
r16736 | |||
Gregory Szorc
|
r37444 | #if repobundlerepo | ||
Sune Foldager
|
r16736 | == Test for issue3441 | ||
Martin Geisler
|
r11870 | |||
Sune Foldager
|
r16736 | $ hg clone -q -r0 . part2 | ||
$ hg -q -R part2 pull bundle.hg | ||||
Raphaël Gomès
|
r50720 | $ hg -R part2 verify -q | ||
Gregory Szorc
|
r37444 | #endif | ||
Mads Kiilerich
|
r16913 | |||
Durham Goode
|
r27911 | == Test bundling no commits | ||
$ hg bundle -r 'public()' no-output.hg | ||||
abort: no commits to bundle | ||||
Martin von Zweigbergk
|
r46431 | [10] | ||
liscju
|
r28714 | |||
$ cd .. | ||||
When user merges to the revision existing only in the bundle, | ||||
it should show warning that second parent of the working | ||||
directory does not exist | ||||
$ hg init update2bundled | ||||
$ cd update2bundled | ||||
$ cat <<EOF >> .hg/hgrc | ||||
> [extensions] | ||||
> strip = | ||||
> EOF | ||||
$ echo "aaa" >> a | ||||
$ hg commit -A -m 0 | ||||
adding a | ||||
$ echo "bbb" >> b | ||||
$ hg commit -A -m 1 | ||||
adding b | ||||
$ echo "ccc" >> c | ||||
$ hg commit -A -m 2 | ||||
adding c | ||||
$ hg update -r 1 | ||||
0 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ echo "ddd" >> d | ||||
$ hg commit -A -m 3 | ||||
adding d | ||||
created new head | ||||
$ hg update -r 2 | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
$ hg log -G | ||||
o changeset: 3:8bd3e1f196af | ||||
| tag: tip | ||||
| parent: 1:a01eca7af26d | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: 3 | ||||
| | ||||
| @ changeset: 2:4652c276ac4f | ||||
|/ user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: 2 | ||||
| | ||||
o changeset: 1:a01eca7af26d | ||||
| user: test | ||||
| date: Thu Jan 01 00:00:00 1970 +0000 | ||||
| summary: 1 | ||||
| | ||||
o changeset: 0:4fe08cd4693e | ||||
user: test | ||||
date: Thu Jan 01 00:00:00 1970 +0000 | ||||
summary: 0 | ||||
Gregory Szorc
|
r37444 | |||
#if repobundlerepo | ||||
liscju
|
r28714 | $ hg bundle --base 1 -r 3 ../update2bundled.hg | ||
1 changesets found | ||||
$ hg strip -r 3 | ||||
Matt Harbison
|
r35394 | saved backup bundle to $TESTTMP/update2bundled/.hg/strip-backup/8bd3e1f196af-017e56d8-backup.hg | ||
liscju
|
r28714 | $ hg merge -R ../update2bundled.hg -r 3 | ||
setting parent to node 8bd3e1f196af289b2b121be08031e76d7ae92098 that only exists in the bundle | ||||
1 files updated, 0 files merged, 0 files removed, 0 files unresolved | ||||
(branch merge, don't forget to commit) | ||||
When user updates to the revision existing only in the bundle, | ||||
it should show warning | ||||
$ hg update -R ../update2bundled.hg --clean -r 3 | ||||
setting parent to node 8bd3e1f196af289b2b121be08031e76d7ae92098 that only exists in the bundle | ||||
1 files updated, 0 files merged, 1 files removed, 0 files unresolved | ||||
When user updates to the revision existing in the local repository | ||||
the warning shouldn't be emitted | ||||
$ hg update -R ../update2bundled.hg -r 0 | ||||
0 files updated, 0 files merged, 2 files removed, 0 files unresolved | ||||
Gregory Szorc
|
r37444 | #endif | ||
Boris Feld
|
r40458 | |||
Test the option that create slim bundle | ||||
$ hg bundle -a --config devel.bundle.delta=p1 ./slim.hg | ||||
3 changesets found | ||||
Boris Feld
|
r40459 | |||
Test the option that create and no-delta's bundle | ||||
$ hg bundle -a --config devel.bundle.delta=full ./full.hg | ||||
3 changesets found | ||||
r50122 | ||||
r50505 | ||||
Test the debug statistic when building a bundle | ||||
----------------------------------------------- | ||||
$ hg bundle -a ./default.hg --config debug.bundling-stats=yes | ||||
3 changesets found | ||||
DEBUG-BUNDLING: revisions: 9 | ||||
DEBUG-BUNDLING: changelog: 3 | ||||
DEBUG-BUNDLING: manifest: 3 | ||||
DEBUG-BUNDLING: files: 3 (for 3 revlogs) | ||||
DEBUG-BUNDLING: deltas: | ||||
DEBUG-BUNDLING: from-storage: 2 (100% of available 2) | ||||
DEBUG-BUNDLING: computed: 7 | ||||
DEBUG-BUNDLING: full: 7 (100% of native 7) | ||||
DEBUG-BUNDLING: changelog: 3 (100% of native 3) | ||||
DEBUG-BUNDLING: manifests: 1 (100% of native 1) | ||||
DEBUG-BUNDLING: files: 3 (100% of native 3) | ||||
r50122 | Test the debug output when applying delta | |||
----------------------------------------- | ||||
$ hg init foo | ||||
$ hg -R foo unbundle ./slim.hg \ | ||||
> --config debug.revlog.debug-delta=yes \ | ||||
> --config storage.revlog.reuse-external-delta=no \ | ||||
> --config storage.revlog.reuse-external-delta-parent=no | ||||
adding changesets | ||||
r50676 | DBG-DELTAS: CHANGELOG: rev=0: delta-base=0 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=-1 p2-chain-length=-1 - duration=* (glob) | |||
DBG-DELTAS: CHANGELOG: rev=1: delta-base=1 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=0 p2-chain-length=-1 - duration=* (glob) | ||||
DBG-DELTAS: CHANGELOG: rev=2: delta-base=2 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=0 p2-chain-length=-1 - duration=* (glob) | ||||
r50122 | adding manifests | |||
r50676 | DBG-DELTAS: MANIFESTLOG: rev=0: delta-base=0 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=-1 p2-chain-length=-1 - duration=* (glob) | |||
r52226 | DBG-DELTAS: MANIFESTLOG: rev=1: delta-base=0 is-cached=1 - search-rounds=1 try-count=1 - delta-type=delta snap-depth=-1 - p1-chain-length=0 p2-chain-length=-1 - duration=* (glob) | |||
DBG-DELTAS: MANIFESTLOG: rev=2: delta-base=1 is-cached=1 - search-rounds=1 try-count=1 - delta-type=delta snap-depth=-1 - p1-chain-length=1 p2-chain-length=-1 - duration=* (glob) | ||||
r50122 | adding file changes | |||
r50676 | DBG-DELTAS: FILELOG:a: rev=0: delta-base=0 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=-1 p2-chain-length=-1 - duration=* (glob) | |||
DBG-DELTAS: FILELOG:b: rev=0: delta-base=0 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=-1 p2-chain-length=-1 - duration=* (glob) | ||||
DBG-DELTAS: FILELOG:c: rev=0: delta-base=0 is-cached=1 - search-rounds=0 try-count=0 - delta-type=full snap-depth=0 - p1-chain-length=-1 p2-chain-length=-1 - duration=* (glob) | ||||
r50122 | added 3 changesets with 3 changes to 3 files | |||
new changesets 4fe08cd4693e:4652c276ac4f (3 drafts) | ||||
(run 'hg update' to get a working copy) | ||||
r50506 | ||||
Test the debug statistic when applying a bundle | ||||
----------------------------------------------- | ||||
$ hg init bar | ||||
$ hg -R bar unbundle ./default.hg --config debug.unbundling-stats=yes | ||||
adding changesets | ||||
adding manifests | ||||
adding file changes | ||||
DEBUG-UNBUNDLING: revisions: 9 | ||||
DEBUG-UNBUNDLING: changelog: 3 ( 33%) | ||||
DEBUG-UNBUNDLING: manifests: 3 ( 33%) | ||||
DEBUG-UNBUNDLING: files: 3 ( 33%) | ||||
DEBUG-UNBUNDLING: total-time: ?????????????? seconds (glob) | ||||
DEBUG-UNBUNDLING: changelog: ?????????????? seconds (???%) (glob) | ||||
DEBUG-UNBUNDLING: manifests: ?????????????? seconds (???%) (glob) | ||||
DEBUG-UNBUNDLING: files: ?????????????? seconds (???%) (glob) | ||||
DEBUG-UNBUNDLING: type-count: | ||||
DEBUG-UNBUNDLING: changelog: | ||||
DEBUG-UNBUNDLING: full: 3 | ||||
r50676 | DEBUG-UNBUNDLING: cached: 3 (100%) | |||
r50506 | DEBUG-UNBUNDLING: manifests: | |||
DEBUG-UNBUNDLING: full: 1 | ||||
r50676 | DEBUG-UNBUNDLING: cached: 1 (100%) | |||
r50506 | DEBUG-UNBUNDLING: delta: 2 | |||
DEBUG-UNBUNDLING: cached: 2 (100%) | ||||
DEBUG-UNBUNDLING: files: | ||||
DEBUG-UNBUNDLING: full: 3 | ||||
r50676 | DEBUG-UNBUNDLING: cached: 3 (100%) | |||
r50506 | DEBUG-UNBUNDLING: type-time: | |||
DEBUG-UNBUNDLING: changelog: | ||||
DEBUG-UNBUNDLING: full: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: cached: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: manifests: | ||||
DEBUG-UNBUNDLING: full: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: cached: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: delta: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: cached: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: files: | ||||
DEBUG-UNBUNDLING: full: ?????????????? seconds (???% of total) (glob) | ||||
DEBUG-UNBUNDLING: cached: ?????????????? seconds (???% of total) (glob) | ||||
added 3 changesets with 3 changes to 3 files | ||||
new changesets 4fe08cd4693e:4652c276ac4f (3 drafts) | ||||
(run 'hg update' to get a working copy) | ||||