Thank you for sending your enquiry! One of our team members will contact you shortly.
Thank you for sending your booking! One of our team members will contact you shortly.
Duration 14 hours
Course Outline
Module 1 – Advanced Git & GitHub Workflows
- Advanced Git concepts and repository administration
- Branching methodologies: comparing GitFlow with trunk-based development
- Techniques for rebasing, merging, and cherry-picking
- Utilising interactive rebase
- Strategies for managing and resolving complex merge conflicts
- Version control through tags, releases, and version management
- Investigating Git history and recovering lost work
- Best practices for scaling Git workflows in large teams
Module 2 – Advanced Pull Requests & Collaboration
- Crafting efficient pull request workflows
- Implementing draft pull requests and review strategies
- Configuring CODEOWNERS
- Establishing branch protection rules and rulesets
- Defining required reviews and status checks
- Handling large-scale and long-duration pull requests
- Creating issue and pull request templates
- Managing work using GitHub Projects
- Governing teams, permissions, and repository access
- Practical exercise: Designing an enterprise-grade collaboration workflow
Module 3 – GitHub Actions & CI/CD
- Architecture of GitHub Actions
- Structuring workflows, jobs, steps, and triggers
- Managing secrets, variables, and environments
- Implementing conditional execution and job dependencies
- Applying matrix strategies
- Utilising artifacts and caching mechanisms
- Leveraging reusable workflows and composite actions
- Debugging and optimising workflow performance
- Constructing CI pipelines
- Automating testing and build processes
- Managing multi-environment deployments
- Automating release processes
- Practical exercise: Building a comprehensive end-to-end CI/CD pipeline
Module 4 – GitHub Security & Automation
- Overview of GitHub security features
- Managing dependencies with Dependabot
- Implementing dependency review processes
- Utilising secret scanning and push protection
- Performing code scanning
- Establishing security policies and vulnerability management
- Enhancing supply-chain security
- Using the GitHub CLI
- Overview of the GitHub REST API
- Implementing Webhooks and third-party integrations
- Automating repository tasks, issues, and pull requests
- Practical scenarios focused on security and automation
Module 5 – End-to-End GitHub Workflow
- Designing a holistic GitHub development lifecycle
- Defining repository structure and branching strategies
- Refining the pull request and code review process
- Implementing automated testing
- Integrating CI/CD pipelines
- Incorporating security checks
- Managing releases
- Troubleshooting and performance optimisation
- Team-based practical exercise
- 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
- Leveraging code generation and explanation features
- Refactoring and optimising code with Copilot
- Generating unit tests automatically
- Debugging code with Copilot assistance
- Generating documentation
- Utilising Copilot for pull requests and code reviews
- Principles for responsible and secure use of AI-generated code
- Practical Copilot exercises
Requirements
Participants are expected to possess the following background:
- Practical proficiency with Git and GitHub
- A solid understanding of repositories, branching, commits, and pull requests
- Familiarity with GitHub Actions is advantageous but not mandatory
- Working knowledge of standard software development lifecycles
Testimonials (1)
Easy going trainer, very knowledgeable and approachable.