GH-900 - GitHub Foundations offers a comprehensive introduction to Git and GitHub. Learn version control, repository management, and collaborative coding. Discover GitHub Copilot for AI-powered code suggestions and streamline development with Codespaces. Enhance your coding workflow with GitHub Projects and Markdown communication. Gain practical experience through hands-on labs and contribute to open-source projects. Build secure repositories and manage GitHub organizations with confidence.
GitHub Foundations Course Objectives:
-
Understand Git and distributed version control.
-
Manage repositories using GitHub.
-
Utilize GitHub Copilot for AI-powered coding.
-
Collaborate using GitHub Projects and Codespaces.
-
Contribute to open-source projects.
Target Audience for GitHub Foundations
GitHub Foundations is an introductory course that equips participants with essential skills for effective collaboration and version control using GitHub. It's ideal for anyone looking to enhance their software development workflow.
-
Software Developers
-
Web Developers
-
DevOps Engineers
-
Project Managers
-
Quality Assurance Testers
-
Data Scientists
-
IT Students
-
Technical Writers
-
System Administrators
-
Product Managers
-
UX/UI Designers
-
Version Control Specialists
-
Open Source Contributors
-
Course Instructors/Trainers
Course Outline:
GitHub Foundations – Part 1 of 2
1. Introduction to Git
-
Understand the concept of version control
-
Learn about distributed version control systems like Git
-
Create and configure a new Git project
-
Track and manage code changes
-
Recover from simple coding mistakes using Git
Lab:
2. Introduction to GitHub
-
Explore the core features of GitHub
-
Understand repository management
-
Learn the GitHub flow: branches, commits, and pull requests
-
Collaborate through issues and discussions
-
Manage notifications and subscriptions
Lab:
3. GitHub Account Types and Plans
-
Distinguish between Personal, Organization, and Enterprise accounts
-
Understand different plans: Free, Pro, Team, Enterprise
-
Learn features of GitHub Mobile and GitHub Desktop
-
Get a brief overview of billing and payments
4. Code Scanning on GitHub
-
Describe code scanning and its importance
-
Enable code scanning using GitHub and third-party tools
-
Implement CodeQL via GitHub Actions and other CI tools
-
Set up scheduled and event-based scanning workflows
5. Introduction to GitHub Copilot
-
Use GitHub Copilot for autocomplete-style code suggestions
-
Trigger Copilot in different ways
-
Compare Individual, Business, and Enterprise versions
-
Configure and troubleshoot Copilot
Lab:
6. Coding with GitHub Codespaces
-
Understand GitHub Codespaces and their lifecycle
-
Customize Codespaces to suit your workflow
-
Compare GitHub.dev vs Codespaces
Lab:
7. Managing Projects with GitHub
-
Differentiate between Projects and Projects (Classic)
-
Build and organize Projects at the organization level
-
Control visibility, access, and automation features
8. Communicating with Markdown
-
Use Markdown for formatting text, lists, images, and links
-
Learn where and how to use Markdown in GitHub
-
Explore GitHub-flavored Markdown (GFM)
Lab:
GitHub Foundations – Part 2 of 2
1. Contributing to Open Source
-
Discover and contribute to open-source projects
-
Create pull requests
-
Learn open-source communication and review best practices
-
Join and engage with open-source communities
Lab:
2. Managing an InnerSource Program
-
Compare user-owned and organization-owned repositories
-
Plan GitHub organization structure
-
Create discoverable, well-documented repositories
-
Use templates and build transparency
-
Measure and distribute InnerSource success
Lab:
3. Securing a Repository
-
Use GitHub tools for a secure development workflow
-
Enable security detection for private repositories
-
Use Dependabot to manage outdated/vulnerable dependencies
-
Create a SECURITY.md file
-
Remove exposed sensitive data from commits and history
Lab:
4. Introduction to GitHub Administration
-
Understand GitHub’s organizational structure and permissions
-
Explore authentication and identity management strategies
-
Use GitHub as an identity provider
5. Authentication & Authorization
-
Learn GitHub's Authentication and Authorization model
-
Manage user access via supported identity providers
-
Understand the impact of enabling SAML SSO
-
Use Team Synchronization for streamlined member management
6. Managing Repository Changes
-
Review the purpose of branches and pull requests
-
Create and manage pull requests
-
Understand pull request statuses and merging
Lab:
7. Organizing Repository History
-
Search issues, pull requests, and history for relevant information
-
Understand GitHub connections and relationships for easier collaboration
Lab:
8. Using GitHub Copilot with Python
-
Enable GitHub Copilot in VS Code
-
Write effective prompts for useful suggestions
-
Use Copilot to enhance a Python project
Labs: