Skip to main content

Checkpoint is a simple media archive management system.

Project description


Checkpoint watches all the files in a directory (recursively), and allows you to revert your directory to any point in the past that you did a ‘commit’ to save your changes. This is useful for graphic designers, animators, musicians, and anyone looking for an easy way to version large files.

A command-line-utility is included for regular users so they can periodically save snapshots of their files and restore files from that history. Also, a python API is exposed for developers to integrate into Content Management Systems and other software requiring simple file versioning.

What’s a Media-Archive System? Is this a Version Control System?

While excellent Version Control Systems such as Bazaar and Mercurial already exist in python implementations, they are optimized for managing changes to source code using diffs. They can and do handle binary files, but binary file operations are not blazingly fast. From the Bazaar FAQ:

… [bazaar] is primarily a source code control system, not a media archive system. So it is not a priority to support enormous (hundred-megabyte) binaries or multi-gigabyte trees. There are other tools better suited to that.

This is where Checkpoint fits in. Checkpoint was specifically designed to quickly manipulate large binary files such as images, video, audio, and so on.

The other main difference between Checkpoint and a Version Control System (VCS) is that Checkpoint detects your file changes automatically. In a VCS you have to ‘add’ files to the repository using special commands such as svn add somefile.txt. While those VCS commands are helpful in managing source code projects to eliminate storage of intermediary files and generated files, in a Media-Archive System hard drive space is sacrificed for ease of use.

Also of great importance, the Checkpoint command-line utility is incredibly easy to understand, so regular users don’t have to learn any complex VCS terminology or concepts.

Installation and Usage

Visit the Checkpoint project home for more information.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for Checkpoint, version 0.1
Filename, size File type Python version Upload date Hashes
Filename, size Checkpoint-0.1-py2.5.egg (76.9 kB) File type Egg Python version 2.5 Upload date Hashes View hashes
Filename, size Checkpoint-0.1.tar.gz (29.4 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page