The Growing Pristine Problem

If you look at the description of a darcs repository, you will see that each repository contains a pristine.hashed directory. This directory contains files of the working copy, along with, possibly, old versions of them. With this directory, getting a remote repository can be done in a lazy way: first, darcs gets the pristine files in order to build the working copy, and the it gets the patches. Also, local operations, like whatsnew, are made by comparing the working tree with the pristing tree.

One issue that arises is that each time one does a record, push or apply, old pristine files stay around in the repository. It is only when using optimize that you can make them go away. In some big repositories this can be a problem. However, there is a reason why we do not systematically clean these olf pristine files.