Skip to content
Log in
  • Trainer
  • Product managers
  • Marketers

Git and GitHub for Product People

Stop feeling lost in engineering conversations. Learn to read a repository, review a pull request and follow a change from branch to release, all in the GitHub web interface, with no terminal.

Keep at hand: Git cheat sheet for product people

Free15 lessons~9 h 19 min of learning

A cat walks along a subway-map line of blue circles that branches and rejoins in front of a light-blue browser window, with an orange circle at the tip.
Start the course
  1. Module 1: Git in plain words

    Why teams keep a full history of their project, what a repository and a commit are, and how to read that history on GitHub: messages, diffs and blame.

    A long line of blue circles like beads on a string, each with a tiny web page snapshot above it, and a cat looking through an orange magnifier.
    1. 1.1Why teams keep history: version control without fearWhat version control is, Git vs GitHub and how the two differ, and why looking around a repository can't break anything.~28 min

      1.1 Why teams keep history: version control without fear

      ~28 min · 10 exercises

    2. 1.2Repository and commits: reading a GitHub repo pageWhat a repository in GitHub is, its page from top to bottom, what a single commit tells you, and commit message best practices.~29 min

      1.2 Repository and commits: reading a GitHub repo page

      ~29 min · 10 exercises

    3. 1.3Reading history: messages, diffs and blameHow to open a file's history, read a diff line by line and use blame to trace any line back to its commit, pull request and issue.~27 min

      1.3 Reading history: messages, diffs and blame

      ~27 min · 10 exercises

    Module examComplete 3 more lessons to unlock
  2. Module 2: Branches and merges

    Branches as parallel versions of the project, the three ways GitHub merges them (merge commit, squash, rebase) and what a merge conflict is.

    A line of blue circles splits into two branches like a tree limb and rejoins at an orange knot, with a cat sitting on one branch.
    1. 2.1Git branches: parallel versions of the projectWhat a Git branch is, why work happens on short-lived branches next to main, and how to read branches on GitHub: the branch selector, ahead and behind, stale branches, naming conventions and graphs with several lanes.~34 min

      2.1 Git branches: parallel versions of the project

      ~34 min · 11 exercises

    2. 2.2Merging on GitHub: merge commit, squash and merge, rebaseWhat merging does, the three options behind GitHub's merge button (merge commit, squash and merge, rebase and merge) and what each leaves in the history, a fast-forward merge in plain words, and how to check whether a change is really in main.~32 min

      2.2 Merging on GitHub: merge commit, squash and merge, rebase

      ~32 min · 10 exercises

    3. 2.3Merge conflicts on GitHub: why they happen and what to doWhat a merge conflict on GitHub is and why two branches can clash on the same line, what "This branch has conflicts that must be resolved" means, how to read conflict markers and resolve a simple conflict in the browser, and why choosing the right text is a product decision.~34 min

      2.3 Merge conflicts on GitHub: why they happen and what to do

      ~34 min · 11 exercises

    Module examComplete 3 more lessons to unlock
  3. Module 3: Pull requests

    A pull request tab by tab, reviewing one as a PM with comments, suggestions and approvals, and what every GitHub icon and colour means.

    A light-blue envelope-shaped card travels from a side line of circles to the main line, met by reviewers holding a checkmark and a cat with an orange stamp.
    1. 3.1What is a pull request? Anatomy of a PR pageWhat a pull request is, read top to bottom: base and compare branches, draft and ready, the four tabs, the description and a pull request template, reviewers and labels, linked issues, checks and the merge box.~40 min

      3.1 What is a pull request? Anatomy of a PR page

      ~40 min · 11 exercises

    2. 3.2Approve a pull request as a PM: comments and suggestionsWhat a product person checks in a pull request and what to leave to engineers, how to comment on a line, suggest changes with the exact wording, decide when to approve a pull request or request changes, and write review comments people are glad to get.~42 min

      3.2 Approve a pull request as a PM: comments and suggestions

      ~42 min · 12 exercises

    3. 3.3Icons, colours and checks: what every GitHub state meansRead pull request status, issues, GitHub checks, reviews, labels and the merge box at a glance: what every icon and colour means, merged vs closed, and how to tell states apart by shape and text, not colour alone.~45 min

      3.3 Icons, colours and checks: what every GitHub state means

      ~45 min · 12 exercises

    Module examComplete 3 more lessons to unlock
  4. Module 4: Team workflows

    GitHub flow with small branches and fast merges, git flow with develop, release and hotfix branches, and how releases get tags, versions and changelogs.

    Several parallel railway tracks with small trains, track switches and a station platform with an orange flag, and a cat operating the signals.
    1. 4.1GitHub flow: small branches, fast mergesThe loop most product teams work in: branch from main, pull request, review and checks, merge, deploy. Why small, short-lived branches are safer, what "merged" and "deployed" mean, how feature flags let unfinished work ship hidden, and how to read a feature's progress from the pull request list.~41 min

      4.1 GitHub flow: small branches, fast merges

      ~41 min · 11 exercises

    2. 4.2Git flow: develop, release and hotfix branchesThe release-oriented branching model: long-lived main and develop, feature branches, a release branch for each version, hotfix branches, and tags on main. When it fits (app store releases, several supported versions), why many web teams moved to GitHub flow or trunk-based development, and how to recognise each model from a branch list.~39 min

      4.2 Git flow: develop, release and hotfix branches

      ~39 min · 11 exercises

    3. 4.3GitHub releases and versions: tags, SemVer, changelogsWhat a git tag is, how to read a version number like v1.4.1 (SemVer in plain words), how GitHub releases and generated release notes work, how release notes differ from a changelog, how to check whether a fix is in a version, and why merged, released and live for every user can be three different moments.~42 min

      4.3 GitHub releases and versions: tags, SemVer, changelogs

      ~42 min · 11 exercises

    Module examComplete 3 more lessons to unlock
  5. Module 5: GitHub for product work

    Issues, labels and milestones, project boards that track a feature to release, and your first change in the browser, plus how to undo it.

    A board with three columns of blank cards; a cat pushes one orange card into the last column, with a short line of blue circles along the bottom.
    1. 5.1GitHub issues: bug reports, templates, labels and milestonesTurn a one-line request into GitHub issues the team can act on: how to write a bug report with steps to reproduce, feature requests with acceptance criteria, a GitHub issue template, labels, assignees, sub-issues and a milestone with a due date. Plus how closing keywords and mentions link pull requests to issues, and what each issue state tells a PM.~42 min

      5.1 GitHub issues: bug reports, templates, labels and milestones

      ~42 min · 11 exercises

    2. 5.2GitHub Projects: project boards from issue to releaseGitHub project management for product people: board, table and roadmap layouts in GitHub Projects, the status field and custom fields, built-in workflows that move cards, and how to follow a feature from issue to pull request, merge, release and feature flag. Why "Done" on a board doesn't always mean customers can use it, and what to show the CEO.~43 min

      5.2 GitHub Projects: project boards from issue to release

      ~43 min · 11 exercises

    3. 5.3Your first change in the browser, and how to revert itMake a small change entirely in the GitHub web UI: find the file, edit it in the GitHub web editor, commit to a new branch because main is protected, open a pull request, pass checks and review, merge and deploy. Then undo a merged change with GitHub's Revert button, learn when to revert and when to fix forward, and what a PM should and shouldn't edit.~41 min

      5.3 Your first change in the browser, and how to revert it

      ~41 min · 11 exercises

    Module examComplete 3 more lessons to unlock