darcs-2.16.2: a distributed, interactive, smart revision control system

Safe HaskellNone



Packs are an optimization that enable faster repository cloning over HTTP. A pack is actually a tar.gz file that contains many files that would otherwise have to be transfered one by one (which is much slower over HTTP).

Two packs are created at the same time by createPacks:

  1. The basic pack, contains the latest recorded version of the working tree.
  2. The patches pack, contains the set of patches of the repository.

The paths of these files are _darcs/packs/basic.tar.gz and _darcs/packs/patches.tar.gz. There is also _darcs/packs/pristine which indicates the pristine hash at the moment of the creation of the packs. This last file is useful to determine whether the basic pack is in sync with the current pristine of the repository.



createPacks :: (IsRepoType rt, RepoPatch p) => Repository rt p wR wU wT -> IO () Source #

Create packs from the current recorded version of the repository.