Lesson 1 / 7

Welcome to Git: Tracking Changes Without Fear

Git is a version control system created by Linus Torvalds (also the creator of Linux) in 2005. Its job is simple to describe and enormously useful in practice: it tracks every change made to a project’s files over time, lets multiple people work on the same codebase without overwriting each other’s work, and lets you safely experiment, knowing you can always get back to a known-good state.

Unlike every language course on this site, Git is not a programming language — it is a tool, and a genuinely essential one. Professional software is never written by one person typing directly into the final, live version of a project; it is written through a constant cycle of small, tracked changes, reviewed and merged together. Git is how that cycle actually works.

Installing Git

git --version

Git comes pre-installed on most Macs and Linux systems. On Windows, download Git for Windows from git-scm.com, which also includes Git Bash, a terminal that makes the Unix-style commands in this course work identically to how they do on macOS/Linux.

First-time setup

git config --global user.name "Your Name"ngit config --global user.email "you@example.com"

Git records who made every change, so this one-time setup is required before your first commit — every commit from here on will be attributed to this name and email.

Starting a repository

mkdir my-projectncd my-projectngit init

git init turns an ordinary folder into a Git repository — it creates a hidden .git folder that stores the entire history of every tracked change, invisible in normal file browsing but doing all the real work behind the scenes.

What you will build across this course

By the end of this course you will be comfortable committing changes, branching to work on features in isolation, pushing to and pulling from a remote like GitHub, resolving merge conflicts without panic, and undoing mistakes safely — the everyday Git workflow used on virtually every real software team.