PlatinVC

Version control is essential in collaborative software development today. Its main functions are to track the evolutionary changes made to a project’s files, manage work being concurrently undertaken on those files and enable a comfortable and complete exchange of a project’s data among its developers. The most commonly used version control systems are client-server based, meaning they rely on a centralized machine to store and manage all of the content. The obvious drawbacks involved by bringing an intermediary server into the system include having a single point of failure, a central ownership and vulnerability, scalability issues, and increased synchronization and communication delays. Many popular global software projects switched to the emerging distributed version control systems, demonstrating the urgent need for a more suitable version control system.

PlatinVC, is a fully decentralized system, which features the complete system view of centralized systems, while overcoming their drawbacks. All workflows of existing version control systems, centralized or distributed, are supported. PlatinVC even supports a hybrid setup, where other version control systems can interoperate, using PlatinVC as a mediator. Moreover, it introduces an automatic isolation of concurrent work, which separates relevant and required updates from possibly unneeded ones. In this way, branches are only created when necessary. The evolutionary changes of links between files, which can be enhanced by any attributes, are also tracked. That extends snapshot-based version control to other purposes, e.g. traceability of software artifacts. PlatinVC is a serious alternative to current version control systems, as industry proven components for the most critical parts of the system were reused. The evaluation shows that PlatinVC meets the identified requirements completely, thereby being the first fully decentralized version control system that provides a high consistency degree, efficiency, and robustness.

PlatinVC can be seen in action on Youtube.

PlatinVC was presented at CEBIT 2011 in Hannover.

2 thoughts on “PlatinVC

  1. Hi,
    your research on distributed version control systems is just mind-blowing. I just wanted to learn how to setup a simulation environment based on PeerfactSim.KOM. For our project we are planing to build a version control system module for its internal virtual filesystem . For now we have looked at j-git; PlatinVC could be an alternative; Is PlatinVC open source?

    • Hi,
      thanks a lot for the flowers :) I can highly recommend PeerfactSim.KOM as a p2p simulator. We developed it in our research group and it is further improved by our followers. You can find further information in http://peerfact.kom.e-technik.tu-darmstadt.de/ or http://www.peerfact.org/. I am in good contact with the current maintainers, so if needed I could establish a contact. However, I did the final evaluation of PlatinVC for my dissertation in a real test bed instead of a simulator, as scalability but correctness was of main interest.

      PlatinVC will be open source very soon – it is actually open source, but I did not released it yet. I just want to go over the code a final time before publishing it.
      Once I did it will be free to use – and I would be very happy if there is interest in further developing it or its concepts :) Don’t hesitate to contact me.

      PlatinVC is build on top of Mercurial, and enhances its features mainly by the ability to use it as a virtually centralized system. It can be easily adopted to use git instead. The is an item which will be on my roadmap once I released the initial open source version.

Leave a Reply

Your email address will not be published. Required fields are marked *