Skip to content

Repository files navigation

GitHub Workshop

TL;DR — Dive into GitHub + Actions: PR lifecycle, branch protection, workflow YAML, secrets, environments, and debugging. Start with START-HERE.md, then work through the three modules in order.

**Duration:**3.5 hours | Format: Hands-on | Audience: Developers transitioning from GitLab & Jenkins


Before you start

START-HERE.md — clone the repo, install gh, run the sample app. Do this before the session.


Module 1 — GitHub Collaboration & CI Flow (60 min)

TopicGuide
GitLab → GitHub terminology mappinggitlab-github-mapping.md
PR lifecycle: create, review, approve, mergepr-lifecycle.md
Draft PRs & PR templatesdraft-prs-and-templates.md
GitHub CLI for daily workflowsgh-cli-daily-workflows.md
Branch protection rulesbranch-protection-guide.md
Repository lifecycle: CODEOWNERS, merge controls, metadatarepository-lifecycle.md
Quick UI flows: search, blame, comparequick-ui-flows.md
Hands-on exerciseexercises/exercise.md
Solutionsolutions/01-pr-workflow/

Module 2 — GitHub Actions Deep Dive (80 min)

TopicGuide
GitLab CI & Jenkins → GitHub Actions comparisonjenkins-github-actions-comparison.md
Core concepts: triggers, jobs, steps, runnerscore-concepts.md
Secrets, variables & environmentssecrets-variables-environments.md
Environments: approvals & protection rulesenvironments-and-approvals.md
Job orchestration: needs, parallel, conditional executionjob-orchestration.md
Passing data between steps and jobspassing-data.md
Reusable workflows & composite actionsreusable-workflows.md
Performance & scale: caching & matrix buildscaching-and-matrix.md
Security best practices & SHA pinningsecurity-best-practices.md
GITHUB_TOKEN & least-privilege permissions10-permissions.md
Runners: hosted vs self-hostedrunners-guide.md
Manual triggers (workflow_dispatch)manual-triggers.md
Hands-on exerciseexercises/exercise.md
Solutionsolutions/02-ci-workflow/
Bonus exercise: release pipeline (dispatch + reusable + matrix + composite + uses)exercises/exercise-3.md
Solutionsolutions/03-release-workflow/

Module 3 — Day-to-Day Operations & Debugging (30 min)

TopicGuide
Monitoring runs, logs & re-running jobsmonitoring-and-reruns.md
Artifacts: upload, download, shareartifacts.md
Debugging: step debug, annotations, summariesdebugging-guide.md
Hands-on exerciseexercises/exercise.md
Solutionsolutions/03-debugging/

Example Workflows

These are read-only teaching examples — they live under modules/ so they don't auto-run. The only workflow GitHub actually executes is ci.yml (the exercise solution running on this repo).

WorkflowWhat it demonstrates
01-basic-ci.ymlFull CI pipeline: lint → test (matrix) → build → deploy
02-matrix-build.ymlCross-OS, multi-Python matrix with exclude: and include:
02-matrix-build-advanced.ymlAdvanced matrix patterns: include-only and dynamic matrix from job output
03-reusable-workflow.ymlCallable deploy workflow (the callee) — inputs, secrets, outputs
03-reusable-workflow-caller.ymlHow to call the reusable workflow above (build → deploy staging → prod)
04-manual-trigger.ymlworkflow_dispatch with typed inputs and validation

💡 To run any of these for real, copy it into your own repo's .github/workflows/ directory.


Reference

Quick reference cardcheatsheet.md
Instructor timing & demo scriptINSTRUCTOR-GUIDE.md
GitHub DocsGitHub CLI Manual

About

Hands-on GitHub workshop. Covers PR lifecycle, branch protection, GitHub Actions (matrix, reusable workflows, composite actions, secrets), and debugging — with three guided exercises and full solutions.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages