For years now, discussions have been brought up about migrating away from's current version control system (or VCS) into a newer one. We're currently using CVS (Concurrent Versions System) and it has been considered by some a barrier to entry and a source of conflict in the community for years. SVN (Subversion) was a likely candidate for a while since many people have used (and still use) this and so are familiar with it, but when the real discussion started happening, it was clear that a distributed version control system (or DVCS) was the way to go. The three inital candidates were Murcuial, Bazaar and Git. So, in Drupal's do-cratic way, Angie posted a topic in the Issue tracking and software releases group on to get the ball rolling and to get a feel for not only what sort of interest was out there, but also what sort of resources were available to help get any of these options implemented. It very quickly became apparent not only by the amount of volunteers who were willing to start helping out with a plan of attack but how quickly they started getting to work, that the DVCS of choice, based upon our community's ability to make this transition, was Git.

I'd like to reiterate that this decision was not something come to lightly. There are three pages of comments on that post, one of the most important being where Angie describes the reasons for the decision:

I actually deliberately tried to leak information about this post in pieces, using a concrete, calculated strategy in order to arrive at the conclusion of which one has more practical community support (this is the key).

This is important because even though there actually might be better technologies, and there are some compelling reasons, Git is the technology that is the most practical in terms of our community supporting this change.

How can I help?

Where can I learn more?

Published in