A friend linked me to this video yesterday evening and I found it very interesting to watch. This is the work of Michael Ogawa, who created the software to generate the following video. The software takes all the activity information for a particular project sitting on a subversion server, and uses this data to generate a visual representation of project activity. More project captures can be found on Michaels’ Vimeo stream.
Today, as part of my freelance work I have been required to use tortoise SVN, a brilliant subversion tool, presented as a windows shell extension. Here is a link detailing how to set up your own centralised SVN Repository server (something I plan to do in the near future). Before recently using svn, I knew what it was but wasnt aware of some of the amazing features it uses and benefits it has to developers. For those unaware, here are a few main reasons for using SVN.
- SVN is used to control files used and modified by lots of users (e.g. software development teams)
- SVN allows one user to lock a file so no-one else can touch it, avoiding conflicts
- Each user can modify and “commit” their changes to the file, with all sub versions of the file archived (nothing is lost or permanently over-written)
- SVN works great with large files, say you open a large flash file (100MB+) and change one line of text in there. When you “commit” your change back to the server, perhaps only 100kb of data is exchanged during the transaction (hence the whole 100MB+ file does not have to be re-uploaded) vastly increasing efficiency, especially over web connections.
- Each modification of a file can be logged and commented by the author and the file restored to any given point in time by the manager of the repository (not unlike the new “time machine” feature in Leopard).