Skip to content

Latest commit

 

History

History
488 lines (450 loc) · 9.59 KB

gh-foundations.md

File metadata and controls

488 lines (450 loc) · 9.59 KB

GitHub Foundations Study Guide

You can also find this study guide in PDF format 📝

GitHub Foundations

Get exam-ready for your GitHub Foundations Certification with our comprehensive study guide. We’ve curated the essential resources and insights you need to navigate the foundations of GitHub and boost your success with the exam.

Objective Domains

An objective domain for a certification exam, often referred to as a “domain” or “exam domain,” is a structured outline or framework that defines the specific knowledge, skills, and topics that the certification exam will cover. It provides a clear roadmap for what candidates should expect to encounter on the exam and what they need to study and prepare for.

The domains provided in this study guide are intended to provide insight into the topic categories covered in the GitHub Foundations exam, along with the learning objective within each domain.

Domain Breakdown
Domain 1: Introduction to Git and GitHub
Domain 2: Working with GitHub Repositories
Domain 3: Collaboration Features
Domain 4: Modern Development
Domain 5: Project Management
Domain 6: Privacy, Security, and Administration
Domain 7: Benefits of the GitHub Community

Audience Profile

This exam is targeted towards GitHub users who want to validate their understanding of the foundational topics, products, and concepts of collaborating, contributing, and working on GitHub.

Recommendations and Best Practices for Success

To increase your chances of success in passing the GitHub Foundations exam, it’s essential to start with a solid foundation of basic experience, exposure, and proficiency on GitHub. The recommended learning paths for this exam provide you with an in-depth study of the learning content, followed by hands-on exercises and preparation assessment questions that were created to enable you to fine-tune your knowledge and readiness for the certification exam.

Domain 1: Introduction to Git and GitHub

Git and GitHub Basics
Describe version control
Define distributed version control
Describe Git
Describe GitHub
Explain the difference between Git and GitHub
Describe a GitHub repository
Describe a commit
Describe branching
Define a remote in Git terminology
Describe the GitHub flow

GitHub Entities

Describe the different GitHub accounts (personal, organization, enterprise)
Describe GitHub’s products for personal accounts (free, pro)
Describe GitHub’s products for organization accounts (free for organizations, teams)
Describe the different deployment options for GitHub Enterprise
Describe the features in the user profile (metadata, achievements, profile readme, repositories, pinned repositories,
stars, etc.)

GitHub Markdown

Identify the text formatting toolbar on issue and pull request comments

Describe Markdown

Identify the basic formatting syntax (headings, links, task lists, comments, etc.)

Explain where to find and use slash commands

GitHub Desktop

Explain the difference between GitHub Desktop and github.com
Describe the available features with GitHub Desktop

GitHub Mobile

Describe the available features with GitHub Mobile
Explain how to manage notifications through the GitHub Mobile app

Domain 2: Working with GitHub Repositories

Understanding GitHub Repositories
Describe the components of a good README and the recommended repository files (LICENSE, CONTRIBUTING,
CODEOWNERS)
Explain basic repository navigation
Explain how to create a new repository
Describe repository templates
Describe the different features to maintaining a repository
Describe how to clone a repository
Describe how to create a new branch
Explain how to add files to a repository
Identify how to view repository insights
Explain how to save a repository with stars
Explain feature previews

Domain 3: Collaboration Features

Issues
Describe how to link a PR to an issue
Describe how to create an issue
Describe the difference between an issue, discussion, and pull request
Explain how to create a branch from an issue
Identify how to assign issues
Describe how to search and filter issues
Describe how to pin an issue
Explain basic issue management
Explain the difference between issue templates and issue forms
Explain how to use keywords in issues

Pull requests

Describe a pull request
Explain how to create a new pull request
Describe the `base` and `compare` branches in a pull request
Explain the relationship of commits on a pull request
Describe draft pull requests
Describe the purpose of the pull request tabs (conversation, commits, checks, files changed)
Identify how to link activity within a pull request
Explain the different pull request statuses
Recognize how to comment on a posted link to a line or lines of code from a file
Describe code review with a codeowners file
Explain the different options for providing a code review on a pull request (comment, approve, request changes, suggested changes)

Discussions

Describe the difference between discussions and issues
Explain the options available with discussions (announcements, ideas, polls, Q&A, show and tell)
Identify how to mark a comment as an answer to a discussion
Explain how to convert a discussion to an issue
Recognize how to pin a discussion

Notifications

Describe how to manage notification subscriptions
Explain how to subscribe to notification threads
Describe how to find threads where you are at-mentioned
Identify the notification filtering options
Explain the different notification configuration options
Gists, Wikis, and GitHub Pages
Explain how to create a GitHub gist
Describe how to fork and clone a gist
Explain GitHub Wiki pages
Describe how to create, edit, and delete wiki pages
Explain the visibility of wiki pages
Describe GitHub Pages

Domain 4: Modern Development

GitHub Actions
Describe GitHub Actions (basic understanding)
Explain where you can use GitHub Actions within GitHub (general event types)
Explain where you can find existing GitHub Actions
GitHub Copilot
Describe GitHub Copilot
Describe the difference between GitHub Copilot for Individuals and GitHub Copilot for Business
Explain how to get started using GitHub Copilot
GitHub Codespaces
Describe GitHub Codespaces
Identify how do to start a GitHub codespace
Describe the codespace lifecycle
Describe the different customizations you can personalize with GitHub Codespaces
Recognize how to add and configure dev containers
Identify how to share a deep link to a GitHub codespace
Explain how to use the github.dev editor
Explain the differences between the github.dev editor and a GitHub Codespace

Domain 5: Project Management

Manage your work with GitHub Projects
Describe GitHub Projects
Explain the layout options for projects
Describe the configuration options for projects
Explain the difference between projects and projects classic
Explain the use of labels
Explain the use of milestones
Describe how to use and create template repos
Explain how to create, edit, and delete saved replies
Describe the benefits of using a saved reply
Recognize how to add assignees to issues and pull requests
Explain how to use project workflows
Describe project insights

Domain 6: Privacy, Security, and Administration

Authentication and Security
Explain how to secure your account with 2FA
Describe the different access permissions
Explain EMUs (Enterprise Managed Users)
GitHub Administration
Explain how to enable and disable features
Recognize repository permission levels
Identify the options for repository visibility
Explain repository privacy setting options (branch protections, codeowners, required reviewers)
Describe the main features and options in the Security tab
Define repository insights
Explain how to manage collaborators

Domain 7: Benefits of the GitHub Community

Describe the benefits of the open source community
Describe open source
Describe GitHub Sponsors
Describe how GitHub advances open source projects
Identify how to follow people (receive notifications, discover projects in their community)
Explain how to follow organizations (receive notifications about their activity)
Describe the GitHub Marketplace and its purpose
Describe how to apply the benefits of open source
Describe InnerSource
Identify the differences between InnerSource and open source
Describe forking
Describe the components of a discoverable repository
Describe when to use issue templates
Describe when to use pull request templates
Explain how to manage organization settings
Describe members, teams, and roles in a GitHub organization