Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SWEXP Module 02 — Professional Git & GitHub

Theme: Working like a professional software engineering team.

You are a Junior Software Engineer on Project Forge, a SaaS product built by a distributed team. This module takes you from "I can save a file" to operating Git and GitHub the way a professional engineer does: branching, reviewed pull requests, protected branches, CI gates, incident response, history hygiene, and disciplined releases. Every lesson is framed as an engineering ticket you close, with a hands-on lab, an investigation, and an AI-verification exercise.

How You Work Here

Step What it means
Pick up a ticket Each lesson is a ticket (GIT-1048, SEC-5001, …) with acceptance criteria
Read before you change Investigate history and context first
Work on a branch main is always releasable; all work happens on branches
Open a PR Code reaches main only through reviewed, CI-passing pull requests
Verify, don't trust Use AI as a tool, but draft → verify → log everything
Document Keep an engineering notebook as your professional record

The golden rule, throughout: never run a Git command you can't explain — especially history-changing ones (reset, rebase, filter-repo, force-push).

Learning Outcomes

By the end you will be able to:

  • Use Git's core model fluently — staging, commits, branches, merges — and explain why, not just how.
  • Collaborate on GitHub: remotes, synchronization, pull requests, code review, and issue-based planning.
  • Govern a repository with branch protection, CODEOWNERS, and required CI checks.
  • Diagnose and fix a failing CI pipeline by fixing the cause, not bypassing the check.
  • Rewrite history safely, recover "lost" work, and respond to a security incident in the correct order.
  • Choose and justify a branching/collaboration model, and ship disciplined, versioned releases.

Lesson Index

# Lesson Competency Ticket
0 Welcome to the Engineering Organization Environment & Git Fundamentals GIT-1000
1 Investigate an Existing Repository Repository Investigation GIT-1010
2 Save Your First Feature Committing & Staging GIT-1021
3 Develop Your First Feature Branching GIT-1035
4 Merge the Team's Work Merging & Conflict Resolution GIT-1048
5 Recover from a Bad Change Undoing & Recovering GIT-1060
6 Connect to the Engineering Platform Remotes & Platform Auth COLLAB-2001
7 Synchronize with the Engineering Team Synchronization COLLAB-2014
8 Open Your First Pull Request PRs & Code Review COLLAB-2028
9 Plan the Sprint Planning & Issue Tracking COLLAB-2040
10 Protect the Production Branch Repository Governance GOV-3001
11 Investigate a Failed CI Pipeline CI/CD CI-4001
12 Rewrite History Professionally History Rewriting GIT-1099
13 Recover the Lost Work Data Recovery GIT-1112
14 Respond to a Repository Security Incident Security Incident Response SEC-5001
15 Scale the Engineering Organization Scaling & Collaboration Models COLLAB-2099
16 Release Day Release Engineering REL-6001
17 Project Forge Sprint 1 Capstone Integrated Delivery FORGE-9000

The module flows through six phases: Foundations / Local Git (0–5) → Platform & Collaboration (6–9) → Governance & Automation (10–11) → Advanced Git (12–14) → Scale & Delivery (15–16) → Capstone (17).

Repository Layout

.
├── README.md                      # this file
├── MODULE_SYLLABUS.md             # pacing, structure, deliverables
├── LEARNER_GUIDE.md               # how to operate as an engineer here
├── INSTRUCTOR_GUIDE.md            # facilitation and assessment
├── COMPETENCY_MATRIX.md           # lesson → competency → skills
├── ASSESSMENT_RUBRIC.md           # grading weights and performance levels
├── Lesson_00.md … Lesson_17.md    # the 18 lessons
├── labs/                          # hands-on labs + reproducible generators
├── solutions/                     # worked solutions / answer keys
├── resources/                     # cheatsheet, guides, glossary, templates
├── assignments/                   # submission templates + capstone brief
└── instructor-notes/              # per-lesson facilitation notes

Getting Started

  1. Read resources/environment-setup.md and get Git ≥ 2.30 working with your identity configured.
  2. Start your engineering notebook from resources/engineering-notebook-template.md.
  3. Open Lesson_00.md and pick up your first ticket.
  4. Keep resources/git-command-cheatsheet.md and resources/troubleshooting-playbook.md open as you work.

Labs are local-first: scenarios are built by copy-paste generators in throwaway directories, and platform features (PRs, branch protection, CI) include offline fallbacks so you're never blocked. The GitHub-based paths are the real thing layered on top.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors