Collaborative Development with Git & GitHub

12 May 2026 7 min
Beginner
2h
Created at 12 May 2026
Cover image — Git & GitHub Collaboration

Git & GitHub Collaboration

Lecture materials

Course Overview

An introductory lecture for those newly curious about open source. We look at Git Flow — a proven branching strategy — visually through Sourcetree (a UI tool), and see how it pairs with AI code generators (Claude Code), all in one flow.

This lecture is demonstration-based. The instructor shares their screen and walks through a full cycle, while participants observe the flow and the behavior of the tools. Hands-on practice — where you push PRs yourself — is covered in a separate course.

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#e3f2fd','primaryBorderColor':'#90caf9','lineColor':'#546e7a','textColor':'#333','mainBkg':'#fafafa','nodeBorder':'#90a4ae','clusterBkg':'#f5f5f5','clusterBorder':'#bdbdbd'}}}%% flowchart LR subgraph Solo["Solo work"] S1["local\nfile"] --> S2["edit"] --> S3["save"] end subgraph Team["Team work"] C1["main"] --> C2["develop"] --> C3["feature"] C3 --> C4["PR\nreview"] --> C5["deploy"] end Solo -- "evolves with Git Flow" --> Team style S1 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style S2 fill:#eceff1,stroke:#546e7a,stroke-width:2px,rx:10,ry:10 style S3 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style C1 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style C2 fill:#bbdefb,stroke:#1976d2,stroke-width:2px,rx:10,ry:10 style C3 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style C4 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style C5 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style Solo rx:15,ry:15 style Team rx:15,ry:15

Course Flow

%%{init: {'theme':'base','themeVariables':{'primaryColor':'#e3f2fd','primaryBorderColor':'#90caf9','lineColor':'#546e7a','textColor':'#333','mainBkg':'#fafafa','nodeBorder':'#90a4ae','clusterBkg':'#f5f5f5','clusterBorder':'#bdbdbd'}}}%% flowchart LR subgraph Phase1["Phase 1 — Fundamentals"] direction TB P1["Part 1\nGit & GitHub basics"] P2["Part 2\nSourcetree intro"] P1 --> P2 end subgraph Phase2["Phase 2 — Git Flow"] direction TB P3["Part 3\nGit Flow concepts"] P4["Part 4\nSourcetree's\nGit Flow menu"] P5["Part 5\nPR & code review"] P3 --> P4 --> P5 end subgraph Phase3["Phase 3 — AI · Open Source"] direction TB P6["Part 6\nAI code generators\nand Git Flow"] P7["Part 7\nDemo: Claude Code +\nGit Flow timer"] P8["Part 8\nOpen source\ncontribution"] P6 --> P7 --> P8 end Phase1 --> Phase2 --> Phase3 style P1 fill:#e3f2fd,stroke:#90caf9,stroke-width:2px,rx:10,ry:10 style P2 fill:#e3f2fd,stroke:#90caf9,stroke-width:2px,rx:10,ry:10 style P3 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P4 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P5 fill:#fff9c4,stroke:#f9a825,stroke-width:2px,rx:10,ry:10 style P6 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style P7 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style P8 fill:#c8e6c9,stroke:#388e3c,stroke-width:2px,rx:10,ry:10 style Phase1 rx:15,ry:15 style Phase2 rx:15,ry:15 style Phase3 rx:15,ry:15

Git Flow Branch Model

%%{init: { 'gitGraph': {'mainBranchName':'main'}, 'themeVariables': {'git0':'#1976d2','git1':'#388e3c','git2':'#f9a825','git3':'#d32f2f','git4':'#7b1fa2'}}}%% gitGraph commit id: "init" branch develop commit id: "dev start" branch feature/timer commit id: "timer skeleton" commit id: "start/pause/reset" checkout develop merge feature/timer branch release/0.1.0 commit id: "prepare release" checkout main merge release/0.1.0 tag: "v0.1.0" checkout develop merge release/0.1.0 checkout main branch hotfix/critical commit id: "fix bug" checkout main merge hotfix/critical tag: "v0.1.1" checkout develop merge hotfix/critical

Learning Objectives

  • Understand the core concepts of Git and GitHub from a collaboration perspective
  • See how Git commands map to visual operations in Sourcetree
  • Grasp the roles and flow of Git Flow’s five branches (main, develop, feature, release, hotfix)
  • Observe how Pull Requests and code reviews operate within a collaboration cycle, through demonstration
  • Watch how AI code generators (Claude Code) combine with Git Flow in a modern development workflow
  • Build a mental picture of the full open source contribution process

Target Audience · Prerequisites

Target AudiencePrerequisites
Students / junior developers wanting a bird’s-eye view of Git/GitHub collaborationBasic terminal/CLI experience (optional)
Junior developers or team leads curious about the big picture of Git FlowExperience writing code in at least one language
Anyone curious about the full open source contribution processPrior Git/GitHub experience not required
Anyone wanting to see how AI code generators fit with collaboration workflowsPrior AI code generator experience not required

Demonstration Environment

ItemSetup
DeviceMacBook or Windows laptop
Primary GUI toolSourcetree (built-in Git Flow support)
Secondary CLI toolGit commands (for concept comparison)
AI code generatorClaude Code
Collaboration platformGitHub (account required)
Demo projectA simple timer web app (HTML/JS)

Course Structure

Part 1 — Git & GitHub Fundamentals

  • What Git is: a distributed version control system that records and reverts changes
  • Core concepts: Working Directory / Staging Area / Repository; commits, branches, remotes
  • Creating a GitHub account and your first repository
  • One full command loop: clone → add → commit → push → pull
  • Touring the GitHub web UI: Repository / Issues / Pull Requests / Actions

Part 2 — Sourcetree Intro

  • Why use a GUI: branches and merges become much easier to grasp as a graph
  • Installation, connecting your GitHub account, cloning a repository
  • Following along in Sourcetree: commits, branches, push/pull, stash
  • A 1:1 mapping table between CLI commands and the GUI
  • Try the same operation in both CLI and GUI

Part 3 — Understanding the Git Flow Workflow

  • What is Git Flow? A branching strategy proposed by Vincent Driessen
  • The roles of the five branches:
    • main — always-deployable, stable
    • develop — integration branch for the next release
    • feature/* — new feature development
    • release/* — release preparation
    • hotfix/* — emergency fixes on main
  • Branching and merging rules — which branch flows into which
  • Git Flow vs GitHub Flow — choosing between long release cycles and rapid deployment (Trunk-based mentioned briefly)
  • Why Git Flow is common in open source projects

Part 4 — Sourcetree’s Git Flow Menu

  • Where Sourcetree’s built-in Git Flow functions live in the menu
  • git flow init / feature start|finish / release start|finish / hotfix start|finish — what Git commands each menu item bundles together
  • One menu click = executing “Vincent Driessen’s standard flow” as-is
  • The full end-to-end cycle is demonstrated in Part 7, alongside Claude Code

Part 5 — Pull Requests and Code Review

  • What a Pull Request really means: “please merge my branch” + “please review it”
  • What makes a good PR: small size, clear title and description, meaningful commit units
  • The code review loop: inline comments, change requests, approval, Resolve
  • Resolving merge conflicts visually in Sourcetree
  • Merge vs Rebase vs Squash — choosing your merge strategy

Part 6 — AI Code Generators and Git Flow

  • Development workflow in the era of AI code generators (Claude Code, Copilot, Cursor, …)
  • Why Git Flow remains valuable in the AI era:
    • feature/* = a task unit that fits one AI session
    • PR = a natural gate where humans review AI-generated code
    • release/* = a checkpoint that re-validates accumulated AI changes
    • hotfix/* = a fast path to revert regressions introduced by AI
  • What to watch for when reviewing AI-generated code (hallucinations, licensing, security)
  • Delegating commit messages and PR descriptions to AI — and the limits of doing so

Part 7 — Demo: Building a Timer App with Claude Code + Git Flow

The instructor walks through the full cycle from an empty repo to deployment via screen share.

  • Create an empty repo → clone it in Sourcetree
  • Git Flow init (auto-creates develop and main)
  • Start feature/timer — click through the Sourcetree Git Flow menu
  • Implement with Claude Code:
    • Build Start / Pause / Reset features
    • Demonstrate asking Claude Code in small task units
  • Split work into meaningful commits — visualize them in the Sourcetree graph
  • Push → open a Pull Request on GitHub — tour the PR and review interface
  • Merge → create release/0.1.0 → tag → deploy to main
  • Intentionally introduce a bug to demonstrate the hotfix/... flow

Part 8 — Open Source Contribution Walkthrough

  • Understanding open source culture: licenses, CONTRIBUTING.md, Code of Conduct
  • How to find a good first issue
  • Walking through a real repository to see the Fork → Branch → PR contribution flow
  • Etiquette when communicating with maintainers (waiting for reviews, addressing change requests)
  • What to watch out for when contributing AI-generated code (licensing, disclosure, review responsibility)

Teaching Method

  • Format: Offline in-person session or Zoom (approx. 2 hours)
  • Demo-based: The instructor shares their screen and walks through a full cycle live
  • UI-focused: Sourcetree as the visual driver; CLI shown only for comparison
  • AI demo: A combined Claude Code + Git Flow timer app demonstration (Part 7)
  • No paid services: All tools used are open source or free
  • Code shared: Demo code and step-by-step commit history published in a GitHub repository
  • Q&A: Free questions during the lecture, plus a dedicated 15-minute Q&A at the end
  • Hands-on practice is a separate course: A follow-up course covers following along and pushing your own PRs with code review

Key Takeaways

PartKey takeaway
Part 1Git provides “a history of change”; GitHub provides “a place to collaborate”
Part 2Seeing branches as a graph in Sourcetree quickly cements your mental model of Git
Part 3Git Flow’s five branches separate stability, integration, development, release, and emergencies into distinct timelines
Part 4Sourcetree’s Git Flow menu reduces complex command sequences to a single click
Part 5Good PRs and good reviews are the heart of good collaboration — deliver context before code
Part 6AI code generators land most safely on top of Git Flow’s feature/PR/release structure
Part 7Watching the full Claude Code + Git Flow cycle play out builds intuition for collaboration
Part 8First open source contributions start not with “code” but with “context and conversation”

Contact

For course schedule and pricing inquiries, please reach out via email.