Stanford Drupal Camp 2017 - Ready, Git Set, Go!

Pink Stanford drupal logo

Presentation Slides can be found here: https://legaudinier.github.io/Ready-Git-Set-Go/# 1

I fully embraced the motto “go big or go home” when I started to think about my first solo community presentation for Stanford Drupal Camp 2017. I wanted to force myself to learn a subject well enough that I could explain it to others. I like a challenge, so I set my eyes on understanding the fundamentals of Git.

Originally I wanted to name my talk “Git Destroys Lives and Tears Apart Families,” but the deeper I dove into Git, the more I realized that understanding the nuts and bolts of Git was not that hard or scary. 2

The light bulb above my head turned on when I realized that a good portion of what I do with Git only exists on my local computer. After this realization, I broke my presentation into four digestible chunks.

First, I explained a local Git Project/Repository, including the steps to move a code change from the Working Directory, to the Staging Area and finally to the Git Directory.

Stanford Camp 2017 - Git Project Workflow

 

Second, I described how teams can use Git by utilizing remote repositories.

Stanford Camp 2017 - Git Remotes

 

Third, I explained what makes Git stand out from other version control systems: Git’s fast and powerful branching feature.

Stanford Camp 2017 - Git Branching

 

Lastly, I explored some common Git situations: conflicts, merging, rebasing, cherry-picking, and stashing.

Stanford Camp 2017 - Three Way Merge Commit

 

I purposely didn’t give many shortcuts, because I think it’s better to force someone to go through a slightly longer process in order to fully understand how the process works. I also asked my listeners to be patient, because Git is complicated. I sometimes used words before they were defined.

Overall, my presentation merely skimmed the surface of Git. Perhaps I will give a talk in the future that delves deeper into Git? Let’s see!

 

 

I used reveal.js for this presentation and I highly recommend it! Learn more about reveal.js here: https://github.com/hakimel/reveal.js/

2 Don’t get me wrong, Git can get excessively and unnecessarily complicated really fast. Just take a look at the biggest and weirdest commits in Linux Git history. I am not naive about the monster that Git can be if you feed it after midnight. However, for a lot of situations, Git really isn’t that hard to work with and understand.