Get in Touch

Course Outline

Module 1 – Advanced Git & GitHub Workflows

  • Deep-dive into advanced Git concepts and repository management
  • Comparing branching strategies: GitFlow vs. trunk-based development
  • Techniques for rebasing, merging, and cherry-picking
  • Utilising interactive rebase
  • Strategies for managing and resolving complex merge conflicts
  • Managing tags, releases, and version control
  • Investigating Git history and performing recoveries
  • Best practices for scaling development teams

Module 2 – Advanced Pull Requests & Collaboration

  • Crafting effective pull request workflows
  • Using draft pull requests and implementing review strategies
  • Configuring CODEOWNERS
  • Setting up branch protection and rulesets
  • Implementing required reviews and status checks
  • Managing large, long-running pull requests
  • Creating Issue templates and pull request templates
  • Utilising GitHub Projects
  • Managing teams, permissions, and repository governance
  • Practical exercise: designing an enterprise-grade collaboration workflow

Module 3 – GitHub Actions & CI/CD

  • Understanding GitHub Actions architecture
  • Configuring workflows, jobs, steps, and triggers
  • Managing secrets, variables, and environments
  • Implementing conditional execution and job dependencies
  • Using matrix strategies
  • Handling artifacts and caching
  • Creating reusable workflows and composite actions
  • Debugging and optimising workflows
  • Constructing CI pipelines
  • Setting up automated testing and build workflows
  • Managing multi-environment deployments
  • Automating releases
  • Practical exercise: building an end-to-end CI/CD pipeline

Module 4 – GitHub Security & Automation

  • Exploring GitHub security capabilities
  • Managing dependencies with Dependabot
  • Implementing dependency review
  • Utilising secret scanning and push protection
  • Running code scanning
  • Establishing security policies and vulnerability management
  • Addressing supply-chain security
  • Using the GitHub CLI
  • Overview of the GitHub REST API
  • Setting up webhooks and integrations
  • Automating repositories, issues, and pull requests
  • Practical scenarios for security and automation

Module 5 – End-to-End GitHub Workflow

  • Designing a comprehensive GitHub development workflow
  • Defining repository and branching strategies
  • Refining the pull request and code review process
  • Integrating automated testing
  • Building the CI/CD pipeline
  • Incorporating security checks
  • Managing releases
  • Troubleshooting and performance optimisation
  • Team-based practical exercise
  • Course summary and Q&A session

Optional Module – GitHub Copilot

  • Exploring GitHub Copilot capabilities and workflow integration
  • Using Copilot Chat and IDE integrations
  • Crafting effective prompts for developers
  • Generating and explaining code
  • Refactoring and optimisation techniques
  • Generating unit tests
  • Debugging with Copilot assistance
  • Automating documentation generation
  • Utilising Copilot for pull requests and code reviews
  • Best practices for responsible and secure use of AI-generated code
  • Hands-on Copilot exercises

Requirements

To get the most out of this course, participants should bring:

  • Hands-on experience using Git and GitHub
  • A solid understanding of repositories, branches, commits, and pull requests
  • Some familiarity with GitHub Actions (beneficial but not mandatory)
  • General knowledge of software development workflows
 14 Hours

Number of participants


Price per participant

Testimonials (1)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories