EduFlow
DevOps & Cloud

Git & GitHub

Make Git's model visible, then use it like a professional team does.

  • 4.7 (1,517 ratings)
  • 14,300 learners
  • Beginner
  • 4h 10m total
  • Updated September 2026

Created by Kenji Watanabe

What you’ll learn

  • Explain commits, branches and HEAD as a graph you can draw
  • Stage and commit deliberately, and read history with log, diff and show
  • Merge, rebase and resolve conflicts without panic
  • Push, pull and review code through GitHub pull requests
  • Undo mistakes safely with restore, revert, reset and the reflog
  • Ship a CI-checked, protected main branch with Actions and rulesets

Who it’s for

Most people learn Git as a list of spells: type these words, hope nothing breaks, delete the folder when it does. This course takes the other route. You learn what a commit, a branch and HEAD actually are, so every command becomes a predictable move on a graph you can draw, and a scary message becomes a situation you can read.

You practise on one real thing: your own portfolio site. It starts as a folder with git init, picks up branches, a merge conflict and a GitHub remote, and finishes as a protected main branch where every change arrives through a pull request that GitHub Actions has checked. Along the way you learn to undo almost anything safely.

Who it’s for
Career switchers and junior developers who use Git a little, fear it a lot, and want to work confidently on a team.
Before you start
Comfort with a terminal (cd, ls, opening files) and a free GitHub account; no Git experience needed.

Hands-on practice

  • Guided exercises: spot the bug, fill the command, order the steps.

Course content

4 sections · 16 lessons · 4h 10m total

  • Why Version Control, and How Git Thinks10 min
  • Install, Configure, and Make Your First Commit16 min
  • The Three Areas: Working Tree, Index, Repository16 min
  • Reading History: Commits as a Graph16 min
  • Section checkpoint5 questions

  • Branches Are Pointers, HEAD Is You15 min
  • Merging: Fast-Forward and Merge Commits15 min
  • Resolving Merge Conflicts Step by Step17 min
  • Rebase vs Merge, and the Golden Rule17 min
  • Section checkpoint5 questions

  • Remotes: Push, Fetch, Pull and Tracking Branches16 min
  • Authenticating with SSH Keys or HTTPS14 min
  • Pull Requests and Code Review17 min
  • Issues, Projects, Forks and Open Source16 min
  • Section checkpoint5 questions

  • Undoing Safely: Revert, Reset and the Reflog18 min
  • Stash and .gitignore15 min
  • Commit Messages, Tags and Releases15 min
  • Guarding main: CI with Actions and Rulesets17 min
  • Section checkpoint5 questions
Final assessment · 12 questions · pass mark 70%

Your instructor

Kenji Watanabe

Staff Engineer, Developer Experience · Trellis

  • 4.7 instructor rating
  • 19,500 learners
  • 2 courses

Kenji's job at Trellis is to make other engineers faster: the Git workflow, the CI pipeline, and the test suite that has to finish before lunch. He has untangled more broken rebases than he can count, and once cut a 40-minute test run to six.

What learners say

4.7

1,517 ratings

  • Marta Kowalska

    7 months ago

    Seeing commits as a graph changed everything. I rebased my first feature branch without panicking, and recovered a "lost" commit with git reflog.

  • Karim Nasser

    4 months ago

    The pull request lessons are underrated: small PRs, clear descriptions, how to answer review comments. My team lead noticed the difference within a week.

  • Isabel Navarro

    2 weeks ago

    Clear and modern, using git switch and git restore instead of checkout for everything. I'd add more practice on resolving messy merge conflicts.