Overview
This module covers team policies, coding standards, and real-world Git workflows with case studies.
Learning Objectives
- Define branch naming and commit message standards
- Set up PR templates and code owners
- Configure protected branches and required checks
- Understand real-world workflows (feature flags, hotfixes, incidents)
- Learn from production case studies
Topics Covered
Part 1: Team Policies & Standards
12.1 Branch Naming Policies
- Consistent naming conventions
12.2 Commit Message Standards
- Conventional commits
12.3 Pull Request Templates
- Structured PR descriptions
12.4 Code Owners
- Automatic review assignment
12.5 Protected Branches
- Preventing direct pushes
12.6 Required Checks
- Enforcing CI passes
12.7 Merge Strategies
- Merge, squash, or rebase policies
12.8 Review SLAs
- Timely code reviews
12.9 Release Policies
- Who can release and when
12.10 Onboarding Standards
- Getting new devs up to speed
Part 2: Real-World Workflows & Case Studies
12.11 Feature Flag Workflow
- Ship behind flags
12.12 Hotfix Workflow
- Emergency production fixes
12.13 Incident Response Workflow
- Git during outages
12.14 Long-Lived Feature Branches
- Managing large features
12.15 Open Source Contribution Flow
- Fork, branch, PR
12.16 Multi-Release Train
- Parallel release management
12.17 Legacy Refactor Workflow
- Incremental modernisation
12.18 Migration Workflow
- Moving between systems
12.19 Case Study: Production Bug
- Real-world bug response
12.20 Case Study: Big Release Day
- Coordinating a major release
Hands-on Exercises
- Create a branch naming policy document.
- Write a PR template for your team.
- Set up branch protection rules.
- Walk through a hotfix workflow.
- Analyse a case study and plan the Git strategy.
Key Takeaways
- Clear policies reduce friction and errors.
- Real-world workflows require adaptation.
- Case studies build intuition for complex scenarios.
Additional Resources
- GitHub Docs: Branch Protection
- Conventional Commits specification