Git is a widely used distributed version control system. On this page, I collected different resources, from how to learn Git as a beginner, to mastering advanced use cases. Enjoy!

Content

Git at first sight

Cheat Sheets

Cheat sheets are a great way to keep an overview over all the different commands and what they do. Many cheat sheets exist, so I will highlight the ones I found most interesting.

Two rather unconventional ones:

And two conventional ones:

Quicklinks

Interesting reads

Learning Git

The Git Parable

The Git Parable should be read or listened to by everyone, in my opinion. It's a great way to learn Git by understanding why it was designed the way it is today. Here, a short quote from the first section of the parable:

The following parable will take you on a journey through the creation of a Git-like system from the ground up. Understanding the concepts presented here will be the most valuable thing you can do to prepare yourself to harness the full power of Git. The concepts themselves are quite simple, but allow for an amazing wealth of functionality to spring into existence.

Basics

Learning (Git) by Doing

  • Hands-on step-by-step guide from the basics to advanced stuff: https://gitimmersion.com/index.html This guide is creating a small project in the ruby programming language, but it seems like you don't need to know ruby in order to follow the guide.
  • Program for a playful introduction to the most important git commands: https://ohmygit.org/
  • Website for learning branching and modifying history in git: https://learngitbranching.js.org/ This tutorial only teaches some parts of git! Some parts are not covered at all, but the other parts are covered beyond the basics.

Intermediate

Advanced

Specific commands

The following is a list of some commands that are not part of the absolute basics, but worth knowing.