Mastering Git

Git is for so much more than just never losing workarrow-up-right. It also enables incredibly powerful workflows that, above all, encourage conversation. These conversations turn into feedback, knowledge sharing, documentation, and all sorts of wonderful things.

When you're ready to level up, thoughtbot has a wonderful course on Git: Mastering Gitarrow-up-right. Here's how to approach it:

After using and, more importantly, observing teammates using the flow for around a month,

  • Come back and start over from Getting to Confident. It will make more sense and sink in deeper this time.

  • Now for the fun part — do the Git Object Model and Object Model Operations episodes. After you've been using Git for a while, and then you finally peek under the hood and realize how simple it is conceptually (underneath it's terrible, terrible CLI), it's a very empowering experience.

    As an exercise, I recommend building your own super-simple git-like version control system in Ruby after doing these two episodes. Initially just make it so that all you can do is create commits, and then checkout commits. Then you can add branching, tagging, etc.

  • Glance through the resources in Learning More and dive into whatever piques your interest. There are a lot of resources/opinions now, many are more recent than the ones given there:

Last updated