next up previous contents
Next: Supported Features Up: SnapSource: Automatic Snapshots of Previous: Introduction

What is SnapSource?

In short, SnapSource is a utility written in Perl to solve the problem mentioned above.

Creating the snapshot by merely copying the files at regular time interval will take a lot of space. Consider a project which has 100 Kbytes of source code. Taking the snapshot at an interval of 5 minutes will require a space of approximately 1.2 Mbytes after 1 hour. Usually changes made to the source codes between one snap shot to the next in a short time interval is very little, as little as few lines of codes. To overcome this space problem, the snap shot should store only the differences. SnapSource takes the later approach.

When SnapSource runs for the first time, it will recurse the source directory mentioned in the configuration files and then create a bunch of base files of the snapshot. Again, to conserve space, the base files are stored in compressed format. Currently, gzipped files are used. The next times SnapSource is invoked, it will create the difference (by running diff) between the current version of the source code and the corresponding base file. This difference file is referred to as delta file. The base files and delta files are stored in separate directories.


next up previous contents
Next: Supported Features Up: SnapSource: Automatic Snapshots of Previous: Introduction
Hans Dulimarta
2002-02-18