PyCon 2016 in Portland, Or
hills next to breadcrumb illustration

Monday 11:30 a.m.–noon

Git: A Peek Under the Hood

Clara Bennett

Audience level:
Best Practices & Patterns


Git is a powerful source control tool, but the learning curve can be steep. This talk introduces the underpinnings of git, to provide a foundation for more confident and effective git use. My hypothesis is that having a solid mental model of what git is actually doing under the hood helps you more easily learn to use advanced git features.


Thanks in part to the popularity of GitHub, git is a widely used version-control system. It is powerful and can do great things to facilitate collaboration on programming projects, but, due to a combination of git's idiosyncracies and the relative dearth of git resources beyond the ubiquitous Intro Tutorial, it can be difficult to get past the basics. It is possible to be productive in git by memorizing a few sequences of steps: how to commit, how to push, and how to pull. However, this kind of workflow can be messy and is forwards-only, leaving the developer to handle reversions manually and without recourse when errors happen. A better command of git can make it easier to experiment, keep only the changes you want, and share work with others. On the hypothesis that tools are easier to use effectively when you understand the underlying mechanics, this talk aims to provide a foundation from which audience-members more easily and effectively learn to leverage the full power of git.