diff --git a/tests/test-treemanifest-treeonly.t b/tests/test-treemanifest-treeonly.t --- a/tests/test-treemanifest-treeonly.t +++ b/tests/test-treemanifest-treeonly.t @@ -44,11 +44,19 @@ > pushrebase=$TESTDIR/../hgext3rd/pushrebase.py > EOF -Make a flat-only draft commit - $ echo f >> subdir/x - $ hg commit -qm "flat only commit" +Make a flat-only draft commit tree + $ echo f1 >> subdir/x + $ hg commit -qm 'flat only commit 1 at level 1' + $ echo f11 >> subdir/x + $ hg commit -qm 'flat only commit 1 over flat only commit 1 at level 1' $ hg up '.^' 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + $ echo f12 >> subdir/x + $ hg commit -qm 'flat only commit 2 over flat only commit 1 at level 1' + $ echo f121 >> subdir/x + $ hg commit -qm 'flat only commit 1 over flat only commit 2 at level 2' + $ hg up '.^^^' + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved Transition to hybrid flat+tree client $ cat >> .hg/hgrc <> .hg/hgrc < [treemanifest] + > treeonly=True + > EOF + Make a local hybrid flat+tree draft commit $ echo h >> subdir/x $ ls_l .hg/store | grep packs [1] - $ hg commit -qm "hybrid flat+tree commit" + $ hg commit -qm "hybrid flat+tree commit" --config treemanifest.treeonly=False $ hg up '.^' 1 files updated, 0 files merged, 0 files removed, 0 files unresolved $ ls_l .hg/store/packs/manifests @@ -94,19 +108,13 @@ -r--r--r-- 1196 54389aae9b0f11d9cc4e33901e6de68bad129e73.histidx -r--r--r-- 183 54389aae9b0f11d9cc4e33901e6de68bad129e73.histpack -Transition to tree-only client - $ cat >> .hg/hgrc < [treemanifest] - > treeonly=True - > EOF - Make a local tree-only draft commit $ ls_l .hg/store/packs/manifests | wc -l \s*4 (re) $ echo t >> subdir/x $ hg commit -qm "tree only commit" 1 trees fetched over * (glob) - $ hg debugdata -c 3 + $ hg debugdata -c 6 7fdb5a91151d114ca83c30c5cb4a1029ef9700ef test 0 0 @@ -119,8 +127,11 @@ $ hg debugindex -m --config treemanifest.treeonly=False rev offset length delta linkrev nodeid p1 p2 0 0 51 -1 0 85b359fdb09e 000000000000 000000000000 - 1 51 51 -1 1 c0196aba344d 85b359fdb09e 000000000000 - 2 102 51 -1 2 0427baa4e948 85b359fdb09e 000000000000 + 1 51 51 -1 1 40f43426c87b 85b359fdb09e 000000000000 + 2 102 51 -1 2 53c631458e33 40f43426c87b 000000000000 + 3 153 51 -1 3 a6875e5fbf69 40f43426c87b 000000000000 + 4 204 51 -1 4 b7db2b1fa98f a6875e5fbf69 000000000000 + 5 255 51 -1 5 0427baa4e948 85b359fdb09e 000000000000 Tree-only amend $ echo >> subdir/x @@ -133,8 +144,11 @@ $ hg debugindex -m --config treemanifest.treeonly=False rev offset length delta linkrev nodeid p1 p2 0 0 51 -1 0 85b359fdb09e 000000000000 000000000000 - 1 51 51 -1 1 c0196aba344d 85b359fdb09e 000000000000 - 2 102 51 -1 2 0427baa4e948 85b359fdb09e 000000000000 + 1 51 51 -1 1 40f43426c87b 85b359fdb09e 000000000000 + 2 102 51 -1 2 53c631458e33 40f43426c87b 000000000000 + 3 153 51 -1 3 a6875e5fbf69 40f43426c87b 000000000000 + 4 204 51 -1 4 b7db2b1fa98f a6875e5fbf69 000000000000 + 5 255 51 -1 5 0427baa4e948 85b359fdb09e 000000000000 # Delete the original commits packs $ rm -rf .hg/store/packs/manifests/26653c55cb54ab20aeb188315d736fb2ece04cd1* @@ -144,7 +158,7 @@ Test looking at the tree from inside the bundle $ hg log -r tip -vp -R $TESTTMP/client/.hg/strip-backup/779a137458d0-0b309c3a-amend.hg --pager=off - changeset: 4:779a137458d0 + changeset: 7:779a137458d0 tag: tip parent: 0:2278cc8c6ce6 user: test @@ -175,7 +189,7 @@ $ ls_l .hg/store/packs/manifests | wc -l \s*12 (re) $ hg log -r tip --stat - changeset: 4:779a137458d0 + changeset: 7:779a137458d0 tag: tip parent: 0:2278cc8c6ce6 user: test @@ -206,11 +220,14 @@ $ hg debugindex -m --config treemanifest.treeonly=False rev offset length delta linkrev nodeid p1 p2 0 0 51 -1 0 85b359fdb09e 000000000000 000000000000 - 1 51 51 -1 1 c0196aba344d 85b359fdb09e 000000000000 - 2 102 51 -1 2 0427baa4e948 85b359fdb09e 000000000000 + 1 51 51 -1 1 40f43426c87b 85b359fdb09e 000000000000 + 2 102 51 -1 2 53c631458e33 40f43426c87b 000000000000 + 3 153 51 -1 3 a6875e5fbf69 40f43426c87b 000000000000 + 4 204 51 -1 4 b7db2b1fa98f a6875e5fbf69 000000000000 + 5 255 51 -1 5 0427baa4e948 85b359fdb09e 000000000000 $ hg log -r tip --stat --pager=off 2 trees fetched over * (glob) - changeset: 5:2937cde31c19 + changeset: 8:2937cde31c19 tag: tip parent: 0:2278cc8c6ce6 user: test @@ -223,8 +240,8 @@ 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over * (glob) Test rebasing treeonly commits - $ hg rebase -d 5 -b 2 - rebasing 2:4b702090309e "hybrid flat+tree commit" + $ hg rebase -d 8 -b 5 + rebasing 5:4b702090309e "hybrid flat+tree commit" merging subdir/x warning: conflicts while merging subdir/x! (edit, then use 'hg resolve --mark') unresolved conflicts (see hg resolve, then hg rebase --continue) @@ -234,7 +251,7 @@ (no more unresolved files) continue: hg rebase --continue $ hg rebase --continue - rebasing 2:4b702090309e "hybrid flat+tree commit" + rebasing 5:4b702090309e "hybrid flat+tree commit" saved backup bundle to $TESTTMP/client/.hg/strip-backup/4b702090309e-7a0f0c5f-rebase.hg (glob) Test histedit treeonly commits @@ -262,7 +279,7 @@ commits $ echo >> subdir/x $ hg debugindex -m --config treemanifest.treeonly=False | tail -1 - 2 102 51 -1 2 0427baa4e948 85b359fdb09e 000000000000 + 5 255 51 -1 5 0427baa4e948 85b359fdb09e 000000000000 $ hg commit -m 'treeonly from hybrid repo' --config treemanifest.treeonly=False $ hg log -r . -T '{desc}\n' --stat treeonly from hybrid repo @@ -275,7 +292,7 @@ 1 files changed, 1 insertions(+), 0 deletions(-) $ hg debugindex -m --config treemanifest.treeonly=False | tail -1 - 2 102 51 -1 2 0427baa4e948 85b359fdb09e 000000000000 + 5 255 51 -1 5 0427baa4e948 85b359fdb09e 000000000000 $ hg strip -r . --config fbamend.safestrip=False 1 files updated, 0 files merged, 0 files removed, 0 files unresolved saved backup bundle to $TESTTMP/client/.hg/strip-backup/87da9865954c-3cfa5389-backup.hg (glob)