@tess After more than 10 years of teaching git, I think the biggest barrier to understanding is that git hides its internal model from users. If git showed the current state of its internal model and each command explained how it manipulates the internal model, git would be much much easier to learn and use.
One day I'd like to write a new porcelain for git that puts these ideas into practice.
@mallory all this *and* standardized the syntax, command names, argument order, and flags? Sure. Maybe. I dunno.
But, like, it would also be a completely different tool then?