Yay! Sourceforge.net has accepted my new project, called VCS Made Easy. This program aims to simplify the management of several directory hierarchies controlled by a version control system (such as CVS or Subversion) up to date.

The program reads a configuration file, written in XML, which describes the set of directories to be managed together with some properties associated to them. It then later processes the action requested by the user, which at the moment can only update such trees. For example, a simple vcsme update call from the command line could result in all trees being updated with the right permissions and ownerships for each of them.

It also aims to be safe enough to be run through sudo(1) or with the setuid bit set, so that regular users can update (or manage in other ways) system-wide trees. Furthermore, it is able to generate nice reports, to be mailed or, in a future, be uploaded to a web server. This is specially useful to run the program from a cron job without any trouble.

The code is being written in C++, with a design that makes it easy to add support for other VCS systems and other ways to generate reports. Aside from the libxml2 library, the program has no other build time dependencies.

In a maybe not-so-distant future, I'd like to create a GNOME frontend for it, so that users can easily keep control of their source trees - in fact, this was the initial idea of the project.

Note that the project has just been created. ATM, the repository is empty, and no releases have been done. However, I have the source tree in my disk, which I hope to upload to the repository soon (specially, to keep it under revision control).