I can't recommend this highly enough. Before, I had been working with IBM Clearcase and SVN, so I don't feel like I "got" git until I saw, visually, the following:
* interactive rebasing
* how remote branches are represented
* what HEAD is, and how it relates to branches
* in day-to-day usage, commits are never really thrown away or deleted. For example, git amend doesn't actually delete a commit.
This was a great starting point, it's highly interactive, and I'm considering learning javascript for the sole purpose of adapting this style interface to teach other subjects. Imagine learning docker through something like this. It's not that much of a reach!
I'm still going through the exercises but as an old SVN user I completely agree, the visual aids in the tutorial are excellent. It would be great to have this resource integrated into a git client.
* interactive rebasing
* how remote branches are represented
* what HEAD is, and how it relates to branches
* in day-to-day usage, commits are never really thrown away or deleted. For example, git amend doesn't actually delete a commit.
This was a great starting point, it's highly interactive, and I'm considering learning javascript for the sole purpose of adapting this style interface to teach other subjects. Imagine learning docker through something like this. It's not that much of a reach!