Mercurial > hg-stable
diff tests/test-remotefilelog-bundles.t @ 40545:3a333a582d7b
remotefilelog: import pruned-down remotefilelog extension from hg-experimental
This is remotefilelog as of my recent patches for compatibility with
current tip of hg, minus support for old versions of Mercurial and
some FB-specific features like their treemanifest extension and
fetching linkrev data from a patched phabricator. The file extutil.py
moved from hgext3rd to remotefilelog.
This is not yet ready to be landed, consider it a preview for
now. Planned changes include:
* replace lz4 with zstd
* rename some capabilities, requirements and wireproto commands to mark
them as experimental
* consolidate bits of shallowutil with related functions (eg readfile)
I'm certainly open to other (small) changes, but my rough mission is
to land this largely as-is so we can use it as a model of the
functionality we need going forward for lazy-fetching of file contents
from a server.
# no-check-commit because of a few foo_bar functions
Differential Revision: https://phab.mercurial-scm.org/D4782
author | Augie Fackler <augie@google.com> |
---|---|
date | Thu, 27 Sep 2018 13:03:19 -0400 |
parents | |
children | 95a079ea1e19 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/tests/test-remotefilelog-bundles.t Thu Sep 27 13:03:19 2018 -0400 @@ -0,0 +1,76 @@ + $ PYTHONPATH=$TESTDIR/..:$PYTHONPATH + $ export PYTHONPATH + + $ . "$TESTDIR/remotefilelog-library.sh" + + $ hginit master + $ cd master + $ cat >> .hg/hgrc <<EOF + > [remotefilelog] + > server=True + > EOF + $ echo x > x + $ hg commit -qAm x + $ echo y >> x + $ hg commit -qAm y + $ echo z >> x + $ hg commit -qAm z + + $ cd .. + + $ hgcloneshallow ssh://user@dummy/master shallow -q + 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob) + $ cd shallow + +Unbundling a shallow bundle + + $ hg strip -r 66ee28d0328c + 1 files updated, 0 files merged, 0 files removed, 0 files unresolved + saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob) + 1 files fetched over 1 fetches - (1 misses, 0.00% hit ratio) over *s (glob) + $ hg unbundle .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg + adding changesets + adding manifests + adding file changes + added 2 changesets with 0 changes to 0 files + new changesets 66ee28d0328c:16db62c5946f + (run 'hg update' to get a working copy) + +Unbundling a full bundle + + $ hg -R ../master bundle -r 66ee28d0328c:: --base "66ee28d0328c^" ../fullbundle.hg + 2 changesets found + $ hg strip -r 66ee28d0328c + saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob) + $ hg unbundle ../fullbundle.hg + adding changesets + adding manifests + adding file changes + added 2 changesets with 2 changes to 1 files + new changesets 66ee28d0328c:16db62c5946f (2 drafts) + (run 'hg update' to get a working copy) + +Pulling from a shallow bundle + + $ hg strip -r 66ee28d0328c + saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg (glob) + $ hg pull -r 66ee28d0328c .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg + pulling from .hg/strip-backup/66ee28d0328c-3d7aafd1-backup.hg + searching for changes + adding changesets + adding manifests + adding file changes + added 1 changesets with 0 changes to 0 files + new changesets 66ee28d0328c (1 drafts) + (run 'hg update' to get a working copy) + +Pulling from a full bundle + + $ hg strip -r 66ee28d0328c + saved backup bundle to $TESTTMP/shallow/.hg/strip-backup/66ee28d0328c-b6ee89e7-backup.hg (glob) + $ hg pull -r 66ee28d0328c ../fullbundle.hg + pulling from ../fullbundle.hg + searching for changes + abort: cannot pull from full bundles + (use `hg unbundle` instead) + [255]