Git & GitHub●Web Application Basics●APIs●Databases●Server Basics●Programming Fundamentals●Python Basics●JavaScript Basics●HTML & CSS●The Command Line●How the Internet Works●Computer Science Basics●Linux Basics●Data Structures, Gently●Debugging & Problem Solving●Markdown & Technical Writing●Cloud & Deployment Basics●FastAPI●PostgreSQL●Redis●Celery●MongoDB●System Design●Low Level Design●Microservices●React●Vue.js●Micro Front-ends●Django●Web Servers (NGINX & Apache)●AI for Developers●ChatGPT & Claude for Coding●Prompt Engineering Basics●Build with the Claude API●Claude Code●Finance for Everyone●Freelancing●Digital Marketing●SEO●GEO — Generative Engine Optimisation●Social Media Marketing●Performance Marketing●PPC Ads●Google Ads●Google AdSense●Meta Ads●Ad Library Research●Biology: Advanced●Biology: Beginner●Biology: Intermediate●Canva Designing: Beginner●Chemistry: Advanced●Chemistry: Beginner●Chemistry: Intermediate●Communication Skills: Advanced●Communication Skills: Beginner●Communication Skills: Intermediate●Digital Entrepreneurship: Advanced●Digital Entrepreneurship: Beginner●Digital Entrepreneurship: Intermediate●History: Advanced●History: Beginner●History: Intermediate●Leadership Skills: Advanced●Leadership Skills: Beginner●Leadership Skills: Intermediate●Mathematics: Advanced●Mathematics: Beginner●Mathematics: Intermediate●Personal Branding: Advanced●Personal Branding: Beginner●Personal Branding: Intermediate●Physical Education: Beginner●Physical Education: Intermediate●Physics: Advanced●Physics: Beginner●Physics: Intermediate●Presentation Skills: Beginner●Presentation Skills: Intermediate●Project Management: Advanced●Project Management: Beginner●Project Management: Intermediate●Public Speaking: Advanced●Public Speaking: Beginner●Public Speaking: Intermediate●Sales and Negotiation: Advanced●Sales and Negotiation: Beginner●Sales and Negotiation: Intermediate●

Beginner · 3h 14m · 16 lessons

Git & GitHub

Version control without the fear. Branch, commit, and collaborate like a pro.

What you'll learn

  • ✦Explain what Git records in each commit and why that beats saving zipped copies of a folder
  • ✦Use the everyday loop (init, add, commit, status, log) and read what each command reports
  • ✦Create, switch and merge branches, and resolve a merge conflict step by step
  • ✦Connect a local repo to GitHub, then clone, push, pull and open a pull request
  • ✦Choose the safe undo for a mistake (restore, revert or reset) without losing work
  • ✦Write clear commit messages and a .gitignore that keeps junk and secrets out of a repo

Part of these career paths

Certification projects

Build 3 projects to earn your certificate

Hands-on work that proves you can apply what you learned — part of the certificate requirements.

View projects →

Syllabus

Module 1 · 51m
Foundations Free
What you'll be able to do
  • Can explain what a commit records and why Git beats keeping zipped copies
  • Can install Git, set your name, email and default branch, and make a first commit
  • Can stage exactly the changes you want with add and restore --staged, then commit them
  • Can read git status and git log to tell what is staged, unstaged, untracked or already committed
Module 2 · 1h
Branching & merging Locked
What you'll be able to do
  • Can explain what a branch and HEAD are, and why new work goes on a branch instead of main
  • Can create, list and switch branches with git switch and git switch -c
  • Can merge a finished branch into main and tell a fast-forward from a merge commit
  • Can resolve a merge conflict: choose the text, remove the markers, add and commit, or abort safely
Module 3 · 46m
GitHub & collaboration Locked
What you'll be able to do
  • Can explain what GitHub adds to Git, and why only a push backs up your commits
  • Can clone a repo from GitHub, or connect a local repo with git remote add
  • Can push, pull and fetch, and fix a rejected push by pulling first
  • Can open a pull request from a branch, and fork a project you can't push to
Module 4 · 37m
Everyday Git Locked
What you'll be able to do
  • Can write a .gitignore and stop tracking a file that was already committed
  • Can choose restore, revert or reset based on how far a mistake has travelled
  • Can write imperative, specific commit messages with one logical change per commit

More Foundations courses