A guide to the What is Git tutorial: what version control is, why it matters, and the core ideas of repositories, commits, and branches before you touch any commands.
This tutorial is conceptual: it builds the mental model of Git before you run commands. Understanding what repositories, commits, and branches are makes every later Git command intuitive instead of mysterious.
Why version control exists
Without version control, saving progress means copies like report-final-v2-really-final.txt. Version control solves this properly: it records the full history of a project, lets you see exactly what changed and when, and lets you return to any earlier state safely.
Git is the version control system used by most software projects in the world.
Repositories: where history lives
A repository is a project that Git is tracking. Alongside your normal files, Git keeps a complete history in a hidden .git folder. Turning a folder into a repository is what lets Git start recording.
The history lives with the project itself. Copy the repository and you copy its entire history, which is why Git works offline and is so resilient.
Commits: snapshots over time
A commit is a snapshot of your project saved at a moment, with a short message saying what changed. A project's history is simply a sequence of commits. Because each commit is a full, labeled point in time, you can always look back or return to one.
Branches: parallel lines of work
A branch is an independent line of development. You might build a new feature on its own branch so the main version stays stable, then merge the finished work back. Branching is what makes it safe for many people (or many ideas) to progress at once.
Hold onto three words: repository (the tracked project), commit (a saved snapshot), and branch (a parallel line of work). Every Git command in the next tutorials operates on these three things.