Using Trac and Subversion with Social Documents

As I’ve touched on before, one of the areas I’ve been exploring as part of the Social Documents projects is ways of managing document revisions. With a major United Nations summit coming up in September (and the 60th anniversary of the charter on Sunday) I’d like my UN Charter site to be better equipped to handle any amendments to the charter that might be made, but as more and more public documents come online it will be important to be able to look back through their histories and see how they’ve evolved.

The version management tool of choice for many coders is currently subversion, often coupled with trac for project management. So one avenue of exploration that seemed to make sense was to use that pairing to manage a multi-part document.

In order to get cross-referencing and formatting working, I decided to patch trac so that it would treat source code in the subversion repository as wiki text (a relatively straightforward patch as the system is nice and modular). It’s looking pretty good right now, though as yet I only have the Preamble and Chapter I of the charter in the repository.

What I’ve quickly come to realise is that hacking trac to form a core for a social document system would be a lot of work. The repository browsing is nice, but adding and navigating commenting features would be a fairly substantial amount of work, probably more than writing something from scratch. Using subversion at the core, however, may well be a solid way forward — it just needs the right front-end.

Tags: , ,


  1. Hey,

    I’ve been thinking the same. Subversion is a fantastic back end and all it needs is a set of web based file management tools to allow users to lock files, rename files, and checkin (new revision) of document.

    I’ve built such engines on top of Enterprise systems and I’ve been using SVN since it first came out of beta.

    Have you given it any more thought?


  2. I never did have a chance to finish this and there’s not much likelihood I will any time soon. I’d like to get back to it though, as I think there’s a good bit of potential.