The Git revision control system is “at the center” of Drupal's hyper-collaborative community says Drupal core committer Angie Byron. The open source content management platform has 37,802 developers with Git commit access, and about 1,300 actively committing each month, she says.
“Git (was) the smartest/safest choice for our community, and a choice that definitely paid off,” said Byron, who is also the director of community development at Acquia.
In celebration of Git's 10-year anniversary this week, we talked with Byron about how and why Drupal uses Git, their success stories using the tool, and her favorite tip for pro users. For more Git success stories in our “Git Week” series, see our interviews with Git creator Linus Torvalds, and maintainers on the KVM and Qt projects. And there are more to come still this week.
Linux.com: Why does Drupal use Git?
The short answer is community momentum.
The longer answer is we were on CVS for about a decade (there weren't a lot of other options back in 2001), and went through an enormous evaluation to decide which distributed version control to move to: hg, bzr, or git (see http://groups.drupal.org/node/48818 for the REALLY longer answer).
Git won out, both on the metric of wider adoption among other open source projects we looked at for inspiration, but also within the Drupal community. We discovered that unlike with bzr and hg, numerous Drupal community members were already using Git on client/personal projects, building Git integrations with our various software management tools, and signing up in droves to offer Git support for CVS refugees.
This made Git the smartest/safest choice for our community, and a choice that definitely paid off. (see "success stories" below)
What makes Git such a great tool?
For me, it's Git's ubiquity. Particularly in the last couple of years, Git has become the clear winner in the version control wars, and having one common language to speak with and collaborate with other developers has solved SO many problems.
How many developers do you have collaborating on Git?
The Drupal community has 37,802 developers with Git commit access, of which about 1,300 folks are actively committing per month. There are many, many more than that who clone/pull from Git for their sites, contribute patches, etc.
How much do you personally use it?
Not nearly enough. :) My usage of Git as a Drupal core committer is almost exclusively around providing final sign-off and commit/push of other peoples' patches, which I do a few times per week. Though there are still a few rare weekends spent in vi, toiling away in a development branch of a personal project, which I greatly look forward to. :)
What's Drupal's most active git repo right now and why?
Drupal core (https://www.drupal.org/project/drupal) is definitely our most active repo, with over 2,700 contributors to the current development branch, and around 1,000 commits per month. This is most likely due to two reasons: 1) the fact that it provides functionality required by all Drupal sites and modules/themes so there are more eyes on it, and 2) the size of the Drupal core repo in terms of the amount of functionality and number of components it provides.
What is your favorite pro tip for using Git?
I am absolutely not a pro-Git user, so my favorite pro tip is:
git config --global help.autocorrect 3
...because I am a total butterfingers and always mis-typing commands, like 'git pusj'. This trick makes Git just do what you meant, not what you said. :)
Any Git success stories you can share?
Definitely! We saw our community's code contributions more than double after the deployment of the Git migration in February, 2011, and that momentum has sustained itself over the past 4 years. We always knew there was pent-up demand, but had no idea the energizing effect that moving to Git would have on our contributors!
Anything else you'd like to say to mark the 10-year anniversary?
Thanks so much for being at the centre of our hyper-collaborative project! :D
Read more Git Week profiles: