view tests/bundles/test-revlog-diff-relative-to-nullrev.sh @ 51018:720e5a5f2b95

stream-clone: use `revlog.reading` in `revlog.get_streams` We can get the same result while using more standard method, so we do.
author Pierre-Yves David <pierre-yves.david@octobus.net>
date Mon, 25 Sep 2023 17:18:40 +0200
parents a94f28be2e6e
children f636103c4d67
line wrap: on
line source

#!/bin/bash
#
# Make sure to patch mercurial to create the delta against nullrev
#
# # Parent  cdb85d0512b81031d4a7b30d6a5ddbe69ef1a876
#
# diff --git a/mercurial/revlogutils/deltas.py b/mercurial/revlogutils/deltas.py
# --- a/mercurial/revlogutils/deltas.py
# +++ b/mercurial/revlogutils/deltas.py
# @@ -1117,7 +1117,10 @@ class deltacomputer:
#                  candidaterevs = next(groups)
#
#          if deltainfo is None:
# -            deltainfo = self._fullsnapshotinfo(fh, revinfo, target_rev)
# +            if revlog._generaldelta:
# +                deltainfo = self._builddeltainfo(revinfo, nullrev, fh)
# +            else:
# +                deltainfo = self._fullsnapshotinfo(fh, revinfo, target_rev)


cd "`dirname \"$0\"`"
export HGRCPATH=
export HGMODULEPOLICY=py

rm -rf nullrev-diff
../../hg init nullrev-diff  --config format.revlog-compression=zlib
cd nullrev-diff
echo hi > a
../../../hg commit -Am root-B
echo ho > a
../../../hg commit -Am child-A
hg up null
echo ha > a
../../../hg commit -Am root-A
../../../hg debugdeltachain a
rm -rf .hg/cache/ .hg/wcache/
cd ..

tar cf test-revlog-diff-relative-to-nullrev.tar nullrev-diff

rm -rf nullrev-diff