Trying to get git mental model right, to a detailed level. The aim is to provide a good mental model, that enables richer git use (and helps prevent some of the common errors).
Based on a internal presentation I kept at our office to my work mates. I thought this might be useful to other people also, and could/should be refined further. This is for learning purposes, and I notice there are some things I don't yet understand about git, so I'm sure there are some errors and imperfections in the presentation also.