The goal of this tutorial is to introduce you to git with practical applications so that it becomes an integral part of your workflow.
Git is a distributed version-control system. You should typically use such system to manage any data for which:
-
You want to track (and potentially revert) changes.
-
You want to maintain multiple versions of.
-
You want to distribute with the possibility of merging back the distributed changes at a later time.
While this introduction may feel abstract, it will get more concrete as we go through the basics and concrete applications I decided to include in this tutorial.
It should be noted that I tried, as much as possible, to hide the graph theory behind git. After going through the tutorial, you might feel git commits graph is more of a tree: this is because I've chosen the material to optimize the ratio of usefulness with respect to the difficulty of learning it.
Do not forget to hover your mouse on the pictures for the alt-text!