Who is this training for?
This course is for people who want to understand GitHub and its best practices. You'll learn the basic features of GitHub, repository management, and the GitHub workflow, including branches, commits, and pull requests. You'll also explore GitHub's collaborative features by reviewing issues and discussions, and know how to manage your GitHub notifications and subscriptions.
Training objectives
- Understand the fundamental concepts and workflows of GitHub
- Navigate and use repositories, branches, and pull requests on GitHub
- Learn basic administrative tasks and settings on GitHub
- Explore essential GitHub product features
- Implement collaboration and code review best practices
- Manage user permissions and repository security
Summary
In this course, you'll learn the basics of GitHub and gain a better understanding of its core features through a hands-on exercise directly in a GitHub repository. You'll learn the best practices for creating, hosting, and maintaining a secure repository on GitHub.
Course outline
Introduction to GitHub
- What is GitHub?
- Components of the GitHub feed
- GitHub as a collaborative platform
- Managing the GitHub platform
- Exercise: Guided tour of GitHub
- Evaluation of the module.
Introduction to GitHub administration
- What is GitHub administration?
- How authentication works on GitHub
- Manage organizations and permissions on GitHub
- Manage access, permissions, and governance across the enterprise
- Evaluate the module.
Introduction to GitHub products
- GitHub accounts and plans
- GitHub Mobile and GitHub Desktop
- GitHub billing
- License usage statistics
- Machine and device usage statistics
- Metered usage reports
- Module rating.
Maintain a secure repository with GitHub best practices
- How to maintain a secure GitHub repository
- Automated security
- Exercise: Secure your repository's supply chain
- Module assessment.
Manage sensitive data and security policies on GitHub
- Set security policies
- Create and manage repository rules
- Report and log
- Exercise
- Module assessment.
Identity authentication and authorization on GitHub
- Identity and user access management
- User authentication
- User authorization
- Team synchronization
- Module evaluation.
GitHub administration for enterprise support and adoption
- GitHub Enterprise features
- Support for GitHub Enterprise
- Scaling your enterprise deployment
- GitHub Enterprise managed users
- Module assessment.
Managing GitHub Actions in the enterprise
- Understanding GitHub enterprise templates
- Managing actions and workflows
- Controlling access to and use of actions in your enterprise
- Managing and using reusable components in GitHub Actions
- Managing runners
- Setting up self-hosted runners for the enterprise
- Managing encrypted secrets
- Exercise: Using a repository secret in a GitHub Actions workflow
- Evaluating the module.
Use GitHub Actions to publish to GitHub Packages
- What is GitHub Packages?
- Publish to GitHub Packages and GitHub Container Registry
- Knowledge Check
- Exercise: Publish to a GitHub Packages Registry
- GitHub Packages for Code Packages
- Module Assessment
Approach and methodology
Practical and structured approach combining focused theory and guided workshops. Participants gradually discover the fundamentals of GitHub, including the basics of administration and the features of the product, through concrete exercises inspired by professional scenarios, promoting an immediate application of the learnings. They learn how to manage repositories, control access, and leverage the platform's core capabilities to collaborate effectively. Led by a Microsoft certified trainer, the training focuses on interactivity and the development of directly transferable skills to administer and use GitHub in a professional context.
Prerequisites
Before taking this course, you should have:
- A basic knowledge of software development concepts
- A general fluency with the use of a computer.
- No prior experience with GitHub is required, but experience with Git or other version control systems is an asset.
Recommendations
- Knowledge of authentication and access management concepts (asset)
- General experience in development, DevOps or IT administration
- Basic familiarity with GitHub flows (branches, commits, pull requests)
