back to courses

Get Started

101 Labs – GitHub Foundations - GitHub Actions

GitHub is a platform that brings together the world’s largest community of developers to discover, share, and build better software. It’s essentially a social network for code where you can store your projects (in repositories), track changes (using version control with Git), collaborate with others, and find open-source code to use and contribute to. GitHub provides tools for managing software development projects, reviewing code, automating tasks (with GitHub Actions), and fostering collaboration among developers. It’s become an essential platform for individuals, teams, and organizations involved in software development.

GitHub offers certifications to validate your skills and knowledge using their platform and tools. This lab course covers:

  • GitHub Foundations: This entry-level certification covers the basics of Git and GitHub, including repositories, branches, commits, pull requests, and collaboration workflows. It’s ideal for students, beginners, and those new to software development.

  • GitHub Actions: This intermediate-level certification focuses on automating workflows and CI/CD pipelines using GitHub Actions. It’s designed for DevOps engineers, software developers, and IT professionals who need to streamline development processes.

Updated for the latest exam syllabus:

  • GitHub Foundations
  • GitHub Actions

GitHub Foundations Certification Training

Key aspects of the GitHub Foundations certification:

Target Audience: This foundation certification is ideal for beginners who want to gain a general understanding of the Amazon cloud platform and the most common features it offers. It’s ideally suited to:

  • Students: Those learning about software development, version control, and collaboration tools. This often includes those in computer science, IT, or related fields.
  • Early-Career Developers: Developers new to using Git and GitHub in a professional setting.
  • Professionals Transitioning to Tech: People from other fields who are learning to code need to understand version control and collaboration workflows.

Skills You Will Learn:

  • GitHub Fundamentals
  • Features and Workflow
  • GitHub Pages
  • Commands and Repositories

Topics Covered:

The certification covers essential web development topics, including:

Fundamental Git Commands:

  • Version Control: Understand the core concepts of version control and how Git helps track changes to your code over time.
  • Basic Commands: Master essential Git commands like init, add, commit, push, pull, branch, merge, and clone.
  • Working with Repositories: Create, clone, and manage Git repositories, both locally and on GitHub.
  • Navigating History: Explore commit history, view differences between versions, and revert changes if needed.

GitHub Features and Workflow:

  • Repositories: Create and manage repositories on GitHub, including setting visibility, adding collaborators, and using branches for different features or bug fixes.
  • Issues: Use issues to track bugs, feature requests, and other tasks related to your project.
  • Pull Requests: Create and manage pull requests to propose changes to a repository and collaborate with others on code reviews.
  • Project Boards: Organize and track your project’s progress using GitHub’s project management tools.
  • GitHub Pages: Create and deploy simple websites directly from your GitHub repositories.

Collaboration and Best Practices:

  • Collaborative Workflow: Understand how to use Git and GitHub effectively for collaborative software development, including branching strategies, code reviews, and merging changes.
  • Open-Source Contributions: Learn how to contribute to open-source projects on GitHub, including forking repositories, creating pull requests, and following community guidelines.
  • Best Practices: Adopt best practices for writing clear commit messages, using branches effectively, and resolving merge conflicts.

Foundational Concepts:

  • Markdown: Learn the basics of Markdown, a lightweight markup language used for formatting text on GitHub and other platforms.
  • Command Line Interface (CLI): Gain familiarity with using the command line interface to interact with Git and GitHub.
  • Software Development Lifecycle: Understand the different stages of the software development lifecycle and how Git and GitHub fit into the process.

By mastering these skills, you’ll be well-equipped to use Git and GitHub effectively for personal projects, academic work, and professional software development. The GitHub Foundations certification validates your knowledge and demonstrates your readiness to collaborate and contribute to the world of software development.

Exam Details:

  • Exam Code: GFC
  • Format: 60 minutes
  • Passing Score: 70%
  • Prerequisites: None. Anyone can take the exam
  • Validity Period: Lifetime
  • Languages: English, Japanese
  • Cost: $99

This course is 100% hands-on training.

GitHub Actions Certification Training

Key aspects of the GitHub Actions certification:

Target Audience: The GitHub Actions exam targets professionals who must automate software development workflows and CI/CD pipelines. Here’s a breakdown of the key audience:

  • DevOps Engineers: Professionals responsible for building, deploying, and managing applications. They must automate tasks, integrate tools, and ensure smooth software delivery.
  • Software Developers: Developers who want to automate parts of their workflow, such as testing, building, and deploying code.
  • IT Professionals: Those working in IT operations or system administration who need to automate infrastructure management and software deployment tasks.

Skills You Will Learn:

  • Workflow Creation
  • Action Utilization
  • Custom Action Development
  • CI/CD Pipeline Management
  • Security Best Practices:

Topics Covered:

The certification covers essential web development topics, including:

Author and Maintain Workflows (40%)

  • Configuring workflows to run for various events, including scheduled, manual, and webhook events.
  • Understanding workflow components such as jobs, steps, actions, and triggers.
  • Utilizing encrypted secrets and environment variables within workflows.
  • Creating workflows for specific purposes, such as publishing to GitHub Packages or deploying to cloud providers.
  • Implementing workflow commands and managing runners.

Consume Workflows (20%)

  • Interpreting the effects of a workflow and diagnosing failed workflow runs.
  • Managing workflow runs, including configuring caching, passing data between jobs, and adding status badges.
  • Locating workflows, logs, and artifacts within a repository.
  • Utilizing actions in workflows and distributing actions appropriately.

Author and Maintain Actions (25%)

  • Understanding different action types, such as JavaScript, Docker container, and composite actions.
  • Identifying the necessary files and directory structures to create an action.
  • Implementing workflow commands within an action to communicate with the runner.
  • Troubleshooting actions and managing action metadata, inputs, and outputs.

Manage GitHub Actions for the Enterprise (15%)

  • Distributing actions and workflows across an enterprise, including managing access controls.
  • Configuring organizational policies for GitHub Actions.
  • Managing runners at the enterprise level, including monitoring, troubleshooting, and updating self-hosted runners.
  • Managing encrypted secrets within an enterprise context.

Exam Details:

  • Exam Code: GHA
  • Format: 75 questions over 2 hours
  • Passing Score: 70%
  • Prerequisites: None. Anyone can take the exam
  • Validity Period: Three years
  • Languages: English, Japanese
  • Cost: $99
Module 1 GitHub Foundations - Introduction to Git and GitHub
Unit 1 Initialize a Local Git Repository and Commit Files
Unit 2 Push a Local Repo to GitHub and Create a Remote
Unit 3 Explore GitHub UI: Viewing Repos Branches and Commits
Unit 4 Create & Switch Branches on GitHub - CLI
Unit 5 Demonstrate the GitHub Flow (Branch → PR → Merge)
Unit 6 Compare Git vs. GitHub (Local vs. Remote) with Advanced Concepts
Unit 7 Add a README Using Markdown Formatting
Unit 8 Use GitHub Desktop to Clone Commit & Push Changes
Unit 9 Add a CODEOWNERS File to Control Reviews
Unit 10 Use a Repository Template for a New Project
Unit 11 Create a New Branch & Add Files
Unit 12 Adjust Repository Settings (Description Topics)
Unit 13 Add Collaborators & Manage Permissions
Unit 14 Set Basic Branch Protections
Unit 15 Create & Assign Issues Add Labels and Pin an Issue
Unit 16 Convert an Issue to a Discussion and Back
Unit 17 Link a Pull Request to an Issue (Perform Code Review)
Unit 18 Use Draft Pull Requests and Understand PR Statuses
Unit 19 Comment on Specific Lines of Code in a PR
Unit 20 Create & Fork a Gist
Unit 21 Create, Edit, & Delete a Wiki Page
Unit 22 Explore GitHub Copilot in VSCode
Unit 23 Start a GitHub Codespace & Customize Dev Containers
Unit 24 Compare github.dev Editor vs. Codespaces
Unit 25 Locate & Explore Existing GitHub Actions in the Marketplace
Unit 26 Create a GitHub Project & Explore Layout Options
Unit 27 Use Labels & Milestones to Organize Issues
Unit 28 Create a Template Repository for Quick Starts
Module 2 GitHub Actions - Author and Maintain Workflows
Unit 1 Create a Workflow Triggered by a Push Event
Unit 2 Configure a Scheduled (CRON) Workflow
Unit 3 Trigger a Manual Workflow Dispatch
Unit 4 Set Up a Workflow Triggered by a Webhook Event
Unit 5 Demonstrate an Event (Issue Creation) Triggering a Workflow
Unit 6 Correct Workflow Syntax (Indentation Job Encapsulation)
Unit 7 Use Steps for Shell Commands & a Marketplace Action
Unit 8 Add Conditional Logic for Steps
Unit 9 Use GitHub-Hosted vs. Self-Hosted Runners
Unit 10 Implement Workflow Commands (set-output group logs)
Unit 11 Create Dependent Jobs Using 'needs'
Unit 12 Add Encrypted Secrets & Use Them in a Workflow
Unit 13 Use Default Environment Variables & GITHUB_TOKEN
Unit 14 Dynamically Set Environment Variables Using Commands
Unit 15 Publish a Package to GitHub Packages in a Workflow
Unit 16 Publish an Image to GitHub Container Registry
Unit 17 Add a Database Service Container to a CI Workflow
Unit 18 Use Labels to Route Workflows to Self-Hosted Runners
Unit 19 Integrate CodeQL Scanning in a Workflow
Unit 20 Publish a Release & Deploy to a Cloud Provider via Workflow
Module 3 GitHub Actions - Consume Workflows
Unit 1 Identify the Triggering Event by Examining Changes in a Repo
Unit 2 Diagnose a Failed Workflow Run Using History & Logs
Unit 3 Access Workflow Logs via GitHub UI & REST API
Unit 4 Enable Step Debug Logging in a Workflow
Unit 5 Use Default Environment Variables in a Step
Unit 6 Pass Custom Environment Variables to a Step
Unit 7 Configure Caching of Dependencies in a Workflow
Unit 8 Pass Data Between Jobs Using Artifacts
Unit 9 Remove Workflow Artifacts from a Repository
Unit 10 Add a Workflow Status Badge to Your README
Unit 11 Add Environment Protections (Required Reviews Before Deploy)
Unit 12 Define a Matrix Build for Multiple Configurations
Unit 13 Implement Workflow Approval Gates
Unit 14 Locate a Workflow Its Logs & Artifacts in the UI
Unit 15 Download Artifacts & Use an Organization Templated Workflow
Module 4 GitHub Actions - Author and Maintain Actions
Unit 1 Choose the Appropriate Action Type (JS Docker Composite)
Unit 2 Create & Troubleshoot a Simple JavaScript Action