GIT SERIES · 8 lessons

Git & GitHub, from setup to Actions.

An 8-chapter track from the first steps of version control to collaboration, rebase and CI automation — every example runs with just git + bash. Aimed at learners moving their solo work onto GitHub, or anyone who wants to nail the differences between rebase, squash and cherry-pick that interviewers love to ask about. The final chapter walks through a simple CI pipeline with GitHub Actions.

Open source repo ↗
🔀
LESSON 01

Chapter 1 — Getting Started

Git install · user config · git init · first commit

This is the first chapter of Git. Through the simplest possible workflow, we walk through one full cycle: **write the project skeleton → commit → run**.

🔀
LESSON 02

Chapter 2 — Daily Workflow

add · commit · log · diff · .gitignore · alias

The everyday cycle: edit → `git add` → `git commit`, plus `git log` to inspect history, `git diff` to inspect changes, `.gitignore` to leave files out, and aliases to type less.

🔀
LESSON 03

Chapter 3 — Branches and Merging

branch · switch · merge · conflict

Branches let you work on multiple ideas in parallel without touching `main`. Merging integrates a branch back. Conflicts happen when two branches edit the same line — we'll see how to resolve them.

🔀
LESSON 04

Chapter 4 — Remote Repositories

clone · push · pull · fetch · credentials

A "remote" is another copy of your repository — usually on GitHub. `git push`, `git pull`, `git fetch` and `git clone` are the four verbs you need. Add credentials (PAT or SSH) once and you're set.

🔀
LESSON 05

Chapter 5 — GitHub Collaboration

fork · PR · Issue · Review · branch protection

Beyond `git push`/`pull`, GitHub adds people-shaped features: forks, pull requests, code review, issue tracking, and branch protection. This chapter covers the social side of Git.

🔀
LESSON 06

Chapter 6 — Undo and Restore

reset · revert · restore · checkout · reflog · stash

Git makes it hard to lose work permanently. This chapter covers all the "undo" mechanisms: `reset`, `revert`, `restore`, `checkout`, `reflog`, `stash`.

🔀
LESSON 07

Chapter 7 — Rebase and Cherry-pick

interactive rebase · squash · cherry-pick · force-with-lease

Tools to clean up history before sharing it. `rebase -i` lets you reorder, squash and edit commits. `cherry-pick` plucks one commit from anywhere. `--force-with-lease` lets you push rewritten history safely.

🔀
LESSON 08

Chapter 8 — GitHub Actions

workflow yml · triggers · matrix · cache · secrets

GitHub Actions runs CI/CD workflows defined as YAML files in `.github/workflows/`. Every `push` or `pull_request` can trigger automated tests, builds, lints, deployments.