Session 3 — Fork, Pull Request, and Issues

Last updated on 2026-03-03 | Edit this page

Session Plan


Duration: 90 minutes Goal: contribute to a repository without write access (fork workflow), use GitHub Issues.

Prerequisite material: Material 3 — Problems, Safety, and GitHub Hygiene.


1. Fork Workflow in Tandems (30 min)

  • Briefly explain the fork workflow:
    • Fork = personal copy of someone else’s repo.
    • Changes are proposed back via pull request.
  • Participants fork their partner’s repository (remove collaborator access first for authenticity, or use a different repo).
  • Make changes on a branch in the fork.
Callout

Key point: fork vs clone vs branch

Before starting, clarify the differences:

  • Clone: copy to your computer (you need write access or work locally).
  • Branch: parallel line within the same repository.
  • Fork: copy the entire repository to your own GitHub account (no write access needed to the original).

Draw a diagram on the whiteboard showing the relationship.


2. PR Against Upstream Repo (25 min)

  • Participants open a PR from their fork to the original repository.
  • Explain the PR form: base repo vs head repo, title, description.

3. Review and Merge (15 min)

  • Partners review and merge (or discuss) each other’s PRs.
  • Discuss: what happens if you do not have merge permissions?
Callout

Discussion point: permissions

This is a good moment to discuss:

  • Why do open-source projects require PR reviews?
  • What is the role of a maintainer vs a contributor?
  • How do protected branches relate to the fork workflow?

4. Issues (15 min)

  • Demo: create an issue with a clear title, description, and labels.
  • Show how to link a PR to an issue (Closes #1).
  • Participants create at least one issue on their own repository.

5. Wrap-Up (5 min)

  • Quick recap of the fork workflow.
  • Remind participants to complete Material 4 before the next session.

Exercise File


See Session 3 — Exercises for the detailed student tasks.