Managing your local Drupal installation with Git

Although Drupal itself provides a central CVS repository for the Drupal core code and contributed projects management, it is well known that people use other tools for their own purposes. There were several ocassions, when private Subversion repositories were used to develop new core functionality (such as Forms API or the multilanguage changes coming up in Drupal 6). Some people also like using BZR to manage their own changes easily.

A very detailed introduction hit my web browser today though, explaining how can you manage and even upgrade your Drupal installation (including contributed modules) using Git, even keeping local modifications.

It is well-known that Git is a distributed version control system that was created by Linus Torvalds to help with the development of Linux kernel. Distributed version control systems, such as Git, are contrasted with centralized version control systems, such as Subversion. Linux kernel development is characterized by hundreds of contributors and several dozens of development sub-projects, all spread out across the Internet. The repositories contain thousands of files and many thousands of revisions.

We show that Git is actually capable of handling much more lightweight problems, without any unnecessary overhead, with only half a dozen of commands to remember.

It is good to see people experimenting with stuff, not because I see Git would be a good fit for the community at large, due to the lack of good and easy tools around it, but because the community gets knowledge on how different tools compare, to use them more effectively. Especially now, when this year's Google Summer of Code sponsors Jakob Petsovits working on making the version control infrastructure system agnostic.


chx's picture

When I have choosen bzr for Drupal development (that's late 2005 I think because in 2006 Feb James Backwell was giving a bzr talk at the Vancouver DrupalCon) git was an extremely unfriendly app. In 2006 that really changed, so yes, git is now a strong contender.

jvandervort's picture

I think the tools are coming along great. Git now runs under windows without cygwin, and mercurial has the most excellent TortoiseHg. They both do a good job and in my book are neck and neck with server functionality, but mercurial takes the lead with better multi-platform.

I use both:) (and unfortuneately CVS and SVN too!).

Oh well, single tool devs are pretty rare these days.

Anonymous's picture

What is the title of the book please? Thank you

Jeff's picture

Not sure if this was an actual question.

He was using a figure of speech

So, by saying "in my book" he really meant "in my opinion."

Add new comment