mirror of
https://github.com/facebook/sapling.git
synced 2024-10-11 17:27:53 +03:00
b178492317
Summary: The inline revlog format merges `.i` and `.d` into one `.i` file. It was intended to reduce the number of files for filelogs. For the changelog one extra file does not hurt. This makes it easier to write native code parsing the changelog revlog index. Reviewed By: xavierd Differential Revision: D17125922 fbshipit-source-id: f48ffe0d2df71abec007a80e05b684dcbac71883
66 lines
1.7 KiB
Python
66 lines
1.7 KiB
Python
# Copyright (c) Facebook, Inc. and its affiliates.
|
|
#
|
|
# This software may be used and distributed according to the terms of the
|
|
# GNU General Public License version 2 or any later version.
|
|
|
|
from __future__ import absolute_import
|
|
|
|
from testutil.dott import feature, sh, testtmp # noqa: F401
|
|
|
|
|
|
sh % "setconfig 'extensions.treemanifest=!'"
|
|
|
|
sh % ". '$TESTDIR/library.sh'"
|
|
sh % "setconfig 'treemanifest.treeonly=False'"
|
|
|
|
sh % "hginit master"
|
|
|
|
sh % "cat" << r"""
|
|
[extensions]
|
|
treemanifest=
|
|
""" >> "$HGRCPATH"
|
|
|
|
sh % "cd master"
|
|
sh % "cat" << r"""
|
|
[extensions]
|
|
[remotefilelog]
|
|
server=True
|
|
[treemanifest]
|
|
server=True
|
|
""" >> ".hg/hgrc"
|
|
sh % "mkdir dir"
|
|
sh % "echo x" > "dir/x"
|
|
sh % "hg commit -qAm x1"
|
|
sh % "hg backfilltree"
|
|
sh % "cd .."
|
|
|
|
# Clone with shallowtrees not set (False)
|
|
|
|
sh % "hgcloneshallow 'ssh://user@dummy/master' shallow --noupdate --config 'extensions.fastmanifest='" == r"""
|
|
streaming all changes
|
|
4 files to transfer, 347 bytes of data
|
|
transferred 347 bytes in 0.0 seconds (339 KB/sec)
|
|
searching for changes
|
|
no changes found"""
|
|
sh % "ls 'shallow/.hg/store/00*.i'" == r"""
|
|
shallow/.hg/store/00changelog.i
|
|
shallow/.hg/store/00manifest.i
|
|
shallow/.hg/store/00manifesttree.i"""
|
|
sh % "rm -rf shallow"
|
|
|
|
# Clone with shallowtrees=True
|
|
sh % "cat" << r"""
|
|
[remotefilelog]
|
|
shallowtrees=True
|
|
""" >> "master/.hg/hgrc"
|
|
|
|
sh % "hgcloneshallow 'ssh://user@dummy/master' shallow --noupdate --config 'extensions.fastmanifest='" == r"""
|
|
streaming all changes
|
|
3 files to transfer, 236 bytes of data
|
|
transferred 236 bytes in 0.0 seconds (230 KB/sec)
|
|
searching for changes
|
|
no changes found"""
|
|
sh % "ls 'shallow/.hg/store/00*.i'" == r"""
|
|
shallow/.hg/store/00changelog.i
|
|
shallow/.hg/store/00manifest.i"""
|