Avoiding the Git of Despair

Back end developers have it easy. Just miles and miles of text-based code. Site builders, on the other hand, have to rely on point-and-click exportables from CTools / Features. Let's face it, there's a lot of magic going on, and it doesn't always go well. In this session we'll explore where all that stuff *goes* so that you're not constantly tripping over yourself in Git.

More specifically:

  • 10,000ft view of how Git works with a deployment landscape (dev/stage/prod)
  • 5,000ft view of how branches work, and what to do in Git world before you export a Feature
  • on-the-ground look at the commands you'll need to run once a Feature is exported so you can share it with others
  • 5,000ft view of why you don't want to work on the same feature as someone else if you can avoid it
  • on-the-ground look at Feature-related merge conflicts just in case it happens to you

By the end of this session, you should be able to:

  • Describe a basic Git branching strategy, and how it relates to a typical dev/stage/prod infrastructure
  • Recall the Git commands you need to add a new Feature to your Git repository
  • Describe what a Git conflict is and how to recover from it

Throughout this session we'll explore the problems you might run into when working with Drupal-generated configuration files and Git. Although we'll focus on Drupal 7 and the Features module, the high level concepts will apply equally to other modules (and versions of Drupal!)


Session Track

Site Building

Experience level


Drupal Version

Drupal 7.x

Session Time Slot(s)

05/12/2015 - 17:00-05/12/2015 - 18:00
515B -Forum One