The Basics
django-rcsfield is a field (like models.TextField) for the Django web framework which - under the hood - versionizes it’s content. The ‘rcs’ in the name is short for ‘revision control system’.
The first prototype works with BZR (hardcoded). SVN code was working a few revisions ago and currently undergoes some refactoring. Backends for mercurial and other vcs are planned and an abstration layer will make implementing additional backends easy.
Currently this is only a prototype. It handles the following: On running manage.py syncdb it checks out an initial working copy. If a model has an VersionizedTextField (may be renamed in the future) contents of this field are versionized in the repository to make it possible to fetch older versions, while the ‘head’ version stays in the db for maximum performance.
Grab the Repository – svn checkout http://django-rcsfield.googlecode.com/svn/trunk/
Recent Commits
-
53 was committed 1 week, 2 days ago.
changes for django-signal-refactoring
-
52 was committed 2 weeks, 6 days ago.
fixed harcoded rcskey_format in queryset
-
51 was committed 2 weeks, 6 days ago.
adding code to support diffs between versions out of the box. additionally objects now have a FIELD_revision attribute if they contain content from an old revision
-
50 was committed 2 weeks, 6 days ago.
added a migrate_keyformat function which will help people who have to change the rcskey_format parameter of a field which has already versionized data. some cleanup in the bzr backend. added a backend method for moving files while keeping the history.
-
49 was committed 2 weeks, 6 days ago.
moved unicode handling into backends.
-
48 was committed 3 weeks ago.
don’t enforce using the widget because it’s only tailored towards contrib.admin and has no real function yet
-
47 was committed 3 weeks ago.
fixed a potential problem in bzr and svn backends if the initial method doesn’t creates all neccesary directories
-
46 was committed 3 weeks ago.
added a special widget for rcsfields. functionality has to be implemented. additionaly: some code formatting cleaned up.
-
43 was committed 1 month ago.
the svn backend is back
-
42 was committed 1 month ago.
added backends directory to setup.py and raised version number to 0.2, a new packaed release will be made available soon.