Git & GitHub: From First Commit to Team Workflows: Narrated, animated lessons on a live Git lab: watch commits land on the graph, branches merge and pull requests get reviewed, then do it yourself in the same lab
A complete, hands-on Git and GitHub course for beginners to working developers: 14 modules, 56 lessons. Every lesson opens with a narrated video of the real Git lab: commands type into the terminal, files move from your working folder to the staging area to the repository, commits appear on the graph, branches merge, conflicts get resolved and pull requests get reviewed. Then you practise in the same lab, a full simulated Git and GitHub in your browser, and every task is checked on the end state, so any correct way of solving counts. Learn commits, history and diffs, undo safely, see inside .git, branch and merge, resolve conflicts, revert, reset and the reflog, cherry-pick and rebase (including interactive rebase), remotes, pushing and pulling, pull requests and code review, forks, branch protection and CODEOWNERS, team workflows and releases, blame and bisect, removing leaked secrets, and GitHub Actions CI on every pull request. Finish by publishing a real project with passing CI and a profile README on your own GitHub account.
14 modules · 56 lessons · 469 practice questions · Beginner · first module free, then $5
What you'll learn
- Use the terminal and Git with confidence: init, status, add, commit, log and diff.
- Write small, clear commits and undo mistakes before and after committing.
- Explain how Git stores snapshots as blobs, trees and commits, and what branches and HEAD really are.
- Branch, merge and resolve conflicts without fear.
- Choose between revert, reset, cherry-pick and rebase, and recover anything with the reflog.
- Clean up a branch with interactive rebase before review.
- Work with remotes: clone, push, fetch, pull and fix a rejected push.
- Open pull requests reviewers love, respond to reviews and merge the right way.
- Contribute through forks, and protect main with reviews, CODEOWNERS and required checks.
- Find the commit that broke something with blame, log -S and bisect, and clean up a leaked secret.
- Write GitHub Actions workflows that test every push and pull request.
- Publish real projects with CI and a profile README on your own GitHub.
Syllabus
- Why Git — Why copies fail and snapshots don't, Git versus GitHub, the terminal commands you need, setting your name and email, and your first repository and commit.
- Saving work — The three places, good commits, reading the history and seeing exactly what changed.
- Undo and ignore — Keep secrets and noise out with .gitignore, undo changes before you commit, fix the last commit with --amend, and move, delete and bring back files.
- Inside .git — What Git really stores: blobs, trees and commits, ids made from content, branches and tags as labels, and the commit graph.
- Branches and merging — Branches as cheap labels, fast-forward and three-way merges, merge commits, and keeping your branch list tidy and current.
- Merge conflicts — Why conflicts happen, reading the markers, resolving by hand or taking one side, deleted-vs-modified files, and git stash.
- Undoing history — Revert shared mistakes safely, reset your own commits, rescue anything with the reflog, and visit old versions and tag releases.
- Rewriting history — Copy one commit with cherry-pick, catch up with rebase or merge, get through rebase conflicts, and tidy your own commits with interactive rebase, without ever rewriting shared history.
- Remotes and GitHub — Clone the team's repository, push and publish branches, bring in teammates' work with fetch and pull, and fix rejected pushes without losing anyone's commits.
- Pull requests — Open pull requests reviewers love, answer a code review, choose between merge, squash and rebase, and close issues automatically while keeping your branch up to date.
- Working as a team — Contribute through forks and keep them in sync, protect main with required reviews and CODEOWNERS, choose a team workflow with conventional commits, and ship tagged releases with semantic versions and generated notes.
- Rescue and detective work — Find who changed what and why with blame and the pickaxe, hunt a bug with git bisect, clean up a leaked secret (and rotate it), and recover lost work with the stash, the reflog, shortlog and git grep.
- GitHub Actions — Automate your checks with GitHub Actions: read workflow runs and their logs, write a CI workflow that tests every push, make the check required on pull requests, and grow it with a matrix, needs, if, secrets and manual runs.
- Capstone on your real GitHub — Set up Git and a secure GitHub account on your own computer, publish a real project with a README, .gitignore and license, add CI that passes through a merged pull request, and finish with a profile README and a portfolio.