mirror of
https://github.com/facebook/sapling.git
synced 2024-10-12 01:39:21 +03:00
9e90a464ee
Summary: We want to migrate the tests to run using treemanifest. As part of that, we want to first transition to using treemanifest without actually changing the hash, so we can check that the tests still work first, then update the hashes second. This diff adds the flatcompat mode and enables it by default. A future diff will start enabling treemanifest for existing tests. Reviewed By: quark-zju Differential Revision: D15030252 fbshipit-source-id: 06c82be749282d62f1d9cfb43246695c427f8165
67 lines
1.8 KiB
Perl
67 lines
1.8 KiB
Perl
$ . "$TESTDIR/library.sh"
|
|
$ setconfig treemanifest.flatcompat=False
|
|
|
|
$ hginit master
|
|
$ cd master
|
|
$ cat >> .hg/hgrc <<EOF
|
|
> [extensions]
|
|
> pushrebase=
|
|
> treemanifest=
|
|
> [remotefilelog]
|
|
> server=True
|
|
> [treemanifest]
|
|
> server=True
|
|
> EOF
|
|
$ mkcommit root
|
|
$ hg phase -p -r 'all()'
|
|
|
|
Clone it
|
|
$ cd ..
|
|
$ hgcloneshallow ssh://user@dummy/master client1 -q --config extensions.treemanifest= --config treemanifest.treeonly=True
|
|
fetching tree '' 1dd55a482f8027ebff785185b3691491312757d3
|
|
1 trees fetched over * (glob)
|
|
1 files fetched over * (glob)
|
|
$ cd client1
|
|
$ cat >> .hg/hgrc <<EOF
|
|
> [extensions]
|
|
> treemanifest=
|
|
>
|
|
> [remotefilelog]
|
|
> usefastdatapack=True
|
|
>
|
|
> [treemanifest]
|
|
> treeonly=True
|
|
> sendtrees=True
|
|
> EOF
|
|
|
|
$ hg debugdrawdag <<EOS
|
|
> F # A/dir1/file = A
|
|
> / # A/dir2/file = A
|
|
> C E # A/dir3/file = A
|
|
> |/ # A/dir4/file = A
|
|
> B D # B/dir1/file = B
|
|
> |/ # B/dir2/file = B
|
|
> A # B/dir3/file = B
|
|
> # B/dir4/file = B
|
|
> # C/dir1/file = C
|
|
> # C/dir2/file = C
|
|
> # C/dir3/file = C
|
|
> # C/dir4/file = C
|
|
> # D/dir1/file = D
|
|
> # E/dir2/file = E
|
|
> # F/dir3/file = F
|
|
> EOS
|
|
$ hg bundle -f --base 'A+B+C' leaves.hg -r 'D+E+F'
|
|
3 changesets found
|
|
|
|
The bundle should have 6 tree items in it - the root tree, and the directory tree that is modified in each of the 3 commits.
|
|
|
|
$ hg debugbundle leaves.hg
|
|
Stream params: {Compression: BZ}
|
|
changegroup -- {nbchanges: 3, version: 02}
|
|
e77dab89c4644acd044afb734c17e20046be6ae7
|
|
97a6f48cdfe66f86ceca092b0619df4e5a99d6ec
|
|
72e9b93c4354749519aa668d05dd8d358ec3b6c5
|
|
b2x:treegroup2 -- {cache: False, category: manifests, version: 1}
|
|
6 data items, 6 history items
|