How to Really Get Git

*
Accepted Session
Short Form
Intermediate
Scheduled: Thursday, June 25, 2015 from 10:00 – 10:45am in B202/203

Excerpt

You already know how to use “git status”, “git push”, and “git add” for your personal projects. You know how to work on a team project with git version control. How do you achieve the next level of git mastery and fix mistakes? We’ll cover how to set up your git environment for a productive workflow, different ways to undo your mistakes in git, and finally, how to use the IPython notebook to automate an entire git workflow.

Description

Mistakes happen very frequently when coding. Sometimes they can be terrifying mistakes. You’ll learn git commands to un-do your coding mistakes effortlessly. What happens if you want to revert only part of a git commit or revert several git commits at a time? How do you re-order, edit, remove, and squash commits? You’ll understand the differences between all the git r commands: git rebase, git revert, git reset, and git reflog and know when and why to use them. You’ll learn how to optimize a common git workflow and how to efficiently un-do mistakes.

The 3 major sections of my talk are covered in this detailed abstract below: how to set up git configs properly, how to overcome git mistakes, and how to automate a git workflow with the IPython notebook. The vast majority of the talk will focus on git mistakes and how to fix them.

Detailed Abstract

I. Set up git on your computer

I will demonstrate how to set up git properly on one’s computer to make git useful for you including git aliases, git auto-completion, and how to customize a git bash terminal to display useful info such as the current git state and git branch.

II. Mistakes happen and how to overcome your mistakes

Mistakes happen. I will talk in detail about how to undo mistakes efficiently in this order. Introduce a typical git workflows. I’ll go over the 4 git r* commands to undo mistakes: git rebase, git revert, git reflog, git reset. I’ll also review common case scenarios of accidents and how to fix them. People will understand how to confidently fix git mistakes by the end of this talk.

III. Automate your git workflow

I will briefly cover how to automate a repetitive git workflow with IPython notebook scripts.

Tags

git, version control, mistakes

Speaking experience

I've given this same talk before at PyTennessee 2015 and this will be my 2nd time giving this talk on intermediate-level git. My slides from the PyTN 2015 regional tech conference are already posted here: http://www.slideshare.net/onceuponatimeforever/decks-44392409

If you're curious about my speaking style, here are some videos and slides for your reference:
Python in the Browser at PyCon 2014: https://www.youtube.com/watch?v=BcDV9QUium4

Misc. lightning talk slides:
http://www.slideshare.net/onceuponatimeforever/how-to-choose-an-opensource-project

Speaker

  • Kuroshitsuji   kiss of death by suzumiyasan

    Susan Tan

    Piston

    Biography

    Software Engineer who thinks in Python @Piston. http://t.co/XPU0t9PJm2 code committer. Tea drinker. Ballet dancer. Tech-Feminist.

    Sessions

      • Title: How to Really Get Git
      • Track: Hacks
      • Room: B202/203
      • Time: 10:0010:45am
      • Excerpt:

        You already know how to use “git status”, “git push”, and “git add” for your personal projects. You know how to work on a team project with git version control. How do you achieve the next level of git mastery and fix mistakes? We’ll cover how to set up your git environment for a productive workflow, different ways to undo your mistakes in git, and finally, how to use the IPython notebook to automate an entire git workflow.

      • Speakers: Susan Tan