EIEIOTECHNOVATION
← Training programmes

EIEIO / AUTOMATION & EMERGING TECHNOLOGY

GitHub Foundations Certification Training

Course outline

2 days

Duration

GitHub Foundations Certification Training

2 days

Overview

The "GitHub Foundations Learning Path" is a concise and beginner-friendly journey designed to introduce you to the fundamental concepts and products of GitHub. You'll discover the benefits of using GitHub as a collaborative platform

and explore its core features, such as repository management, commits, branches, and merging. Through carefully curated modules and hands-on exercises, you'll gain a solid understanding of GitHub's essential tools and be well-equipped to start contributing to projects and collaborating effectively within GitHub.

Outline

Introduction to Git

Learning objectives

In this module, you'll:

  • Learn what version control is
  • Understand distributed version control systems, like Git
  • Create a new Git project and configure it
  • Make and track changes to code by using Git
  • Use Git to recover from simple mistakes

Introduction to GitHub

Learning objectives

In this module, you'll:

  • Identify the fundamental features of GitHub.
  • Learn about repository management.
  • Gain an understanding of the GitHub flow, which includes branches, commits, and pull requests.
  • Explore the collaborative features of GitHub by reviewing issues and discussions.
  • Recognize how to manage your GitHub notifications and subscriptions.

Introduction to GitHub's products

Learning objectives

After completing this module, you're able to:

  • Define the difference between the different types of GitHub accounts: Personal, Organization, and Enterprise.
  • Explain each GitHub plan: GitHub Free for personal accounts and organizations, GitHub Pro for personal accounts, GitHub Team, and GitHub Enterprise.
  • Distinguish the features associated with accessing GitHub on GitHub Mobile and GitHub Desktop.
  • Describe a brief overview of GitHub billing and payments.

Introduction to GitHub Copilot

Learning objectives

In this module, you will:

  • Learn how GitHub Copilot can help you code by offering autocomplete-style suggestions.
  • Learn about the various ways to trigger GitHub Copilot.
  • Learn about the differences among GitHub Copilot Individual, Business, and Enterprise.
  • Learn how to configure GitHub Copilot.
  • Troubleshoot GitHub Copilot.

Code with GitHub Codespaces

Learning objectives

By the end of this module, you're able to:

  • Describe GitHub Codespaces.
  • Explain the GitHub Codespace lifecycle and how to perform each step.
  • Define the different customizations you can personalize with GitHub Codespaces.
  • Discern the differences between GitHub.dev and GitHub Codespaces.

Manage your work with GitHub Projects

Learning objectives

In this module, you learn to:

  • Discern the differences between Projects and Projects (Classic).
  • Build an organization level Project.
  • Organize your Project.
  • Edit the visibility, access, and management of your Project.
  • Develop automation and insights from your Project.

Communicate effectively on GitHub using Markdown

Learning objectives

In this module, you'll:

  • Use Markdown to add lists, images, and links in a comment or text file.
  • Determine where and how to use Markdown in a GitHub repository.
  • Learn about syntax extensions available in GitHub (GitHub-flavored Markdown).

Contribute to an open-source project on

GitHub

Learning objectives

In this module, you will learn how to:

  • Find open-source projects and tasks to contribute to in GitHub.
  • Create pull requests to open-source projects.
  • Implement best practices to communicate with open-source maintainers and perform code reviews.
  • Find and engage with open-source communities.

Manage an InnerSource program by using GitHub

Learning objectives

In this module, you learn how to:

  • Contrast user- versus organization-owned projects.
  • Make recommendations about the number of GitHub organizations you should have.
  • Create discoverable repositories.
  • Create robust repository READMEs.
  • Use issue and pull-request templates.
  • Build transparency into repositories.
  • Measure the success of InnerSource within your organization.
  • Distribute your InnerSource toolkit.

Maintain a secure repository by using GitHub best practices

Learning objectives

In this module, you will:

  • Identify the tools and GitHub features to establish a secure development strategy.
  • Enable vulnerable dependency detection for private repositories.
  • Detect and fix outdated dependencies with security vulnerabilities.
  • Automate the detection of vulnerable dependencies with Dependabot.
  • Add a security policy with a SECURITY.md file.
  • Remove a commit exposing sensitive data in a pull request.
  • Remove historical commits exposing sensitive data deep in your repository.

Introduction to GitHub administration

Learning objectives

By the end of this module, you'll be able to:

  • Summarize the organizational structures and permission levels that GitHub administrators can use to organize members in order to control access and security.
  • Identify the various technologies that enable a secure authentication strategy allowing administrators to centrally manage repository access.
  • Describe the technologies required to centrally manage teams and members using existing directory information services.
  • Describe how you can use GitHub itself as an identity provider for authentication and authorization.

Authenticate and authorize user identities on GitHub

Learning objectives

By the end of this module, you will:

  • Be able to describe the Authentication and Authorization Model.
  • Understand how to manage user access to your GitHub organization through Authorization and Authentication tools.
  • Identify the supported identity providers and technologies that support secure repository access.
  • Understand the implications of enabling SAML SSO.
  • Identify the authorization and authentication options available, and understand the administrator's role in enforcement of a secure access strategy for a GitHub enterprise.
  • Describe how users access private information in a GitHub organization.
  • Evaluate the benefits of enabling Team Synchronization to manage team membership.

Manage repository changes by using pull requests on GitHub

Learning objectives

In this module, you will:

  • Review branches and their importance to pull requests.
  • Define what a pull request is.
  • Learn how to create a pull request.
  • Understand the different pull request statuses.
  • Walk through how to merge a pull request to a base branch.

Search and organize repository history by using GitHub

Learning objectives

In this module, you will:

  • Find relevant issues and pull requests.
  • Search history to find context.
  • Make connections within GitHub to help others find things.

Using GitHub Copilot with Python

Learning objectives

By the end of this module, you're able to:

  • Enable the GitHub Copilot extension in Visual Studio Code.
  • Craft prompts that can generate useful suggestions from GitHub Copilot.
  • Use GitHub Copilot to improve a Python project.

Programme scope, delivery arrangements and suitability are confirmed during enquiry.