GH-900 — GitHub Foundations (GH-900) Exam Blueprint

Independent exam blueprint for GitHub Foundations (GH-900) exam readiness, covering GitHub workflows, collaboration, security, automation, and admin basics.

How to Use This Exam Blueprint

Use this checklist as a practical readiness map for the GitHub GitHub Foundations (GH-900) exam. It is not a replacement for hands-on practice. Treat each section as a set of skills you should be able to explain, recognize in scenarios, and apply in a basic GitHub workflow.

Because exact exam weights are not provided here, the areas below are organized as readiness areas, not weighted domains. For final review, focus on whether you can answer: “Which GitHub feature, workflow, permission, or setting fits this situation?”

Readiness areas at a glance

Readiness areaWhat to reviewYou are ready when you can…
Git and GitHub fundamentalsGit vs. GitHub, repositories, commits, branches, remotes, clones, forksExplain what is local, what is hosted on GitHub, and how changes move between them
Repository structure and navigationREADME, branches, commits, files, history, releases, tags, repository settingsNavigate a repository and identify where common collaboration artifacts live
GitHub FlowBranch, commit, push, pull request, review, merge, deployDescribe the standard collaboration path from idea to merged change
Issues and discussionsIssues, labels, assignees, milestones, templates, discussionsChoose the right collaboration tool for bug reports, ideas, Q&A, and planning
Pull requests and code reviewPR description, diff, review comments, approvals, checks, merge optionsInterpret PR status and know what must happen before merging
Project managementGitHub Projects, boards/tables, fields, automation, milestonesTrack work using issues and project views without confusing planning tools
Markdown and documentationGitHub-flavored Markdown, README, CONTRIBUTING, CODE_OF_CONDUCT, SECURITYRead and create basic project documentation artifacts
Security and identityAuthentication, 2FA, SSH keys, personal access tokens, secrets, Dependabot, code scanning conceptsRecognize secure access patterns and common repository security features
Permissions and administrationPersonal accounts, organizations, teams, roles, repository visibility, branch protection conceptsIdentify who can do what and how access should be managed
GitHub Actions basicsWorkflows, events, jobs, steps, runners, actions, secrets, artifactsExplain what triggers automation and where workflow logic is defined
Developer productivity toolsCodespaces, GitHub CLI, web editor, GitHub Desktop, Copilot conceptsMatch tools to productivity scenarios without overcomplicating workflows
Open source and communityForks, contributions, licenses, community health files, maintainersDescribe a typical external contribution workflow
Integrations and ecosystemMarketplace, webhooks, REST API, GraphQL API, PackagesRecognize how GitHub connects to external tools and automation
Troubleshooting basicsMerge conflicts, failed checks, permission errors, authentication issuesIdentify likely causes and next steps from common symptoms

Core GitHub concepts checklist

Git vs. GitHub

Make sure you can clearly separate the version control system from the hosting and collaboration platform.

ConceptKnow the difference
GitDistributed version control system used locally and remotely
GitHubCloud platform for hosting Git repositories and collaboration
RepositoryProject storage location containing files and Git history
CommitSnapshot of changes with metadata and a unique identifier
BranchIndependent line of development
RemoteA hosted copy or linked repository location, often named origin
CloneLocal copy of a remote repository
ForkPersonal or organization-owned copy of another repository
Pull requestProposal to merge changes from one branch into another
IssueWork item, bug report, request, or discussion starting point

Ready check:

  • I can explain why Git can be used without GitHub.
  • I can explain why GitHub repositories still use Git history.
  • I can describe the difference between cloning and forking.
  • I can identify when a branch is enough and when a fork is more appropriate.
  • I can explain what happens when a commit is pushed to GitHub.

Repository basics

Repository featureWhat to understand
READMEMain project landing documentation
.gitignoreTells Git which local files should not be tracked
License fileCommunicates reuse permissions and restrictions
BranchesUsed for parallel development and review workflows
TagsNamed references commonly used for versions
ReleasesGitHub objects that package versioned software or notes
Repository settingsVisibility, collaborators, branch rules, features, integrations
InsightsActivity, contributors, traffic, dependency and community information depending on repository configuration

Can you do this?

  • Identify the default branch of a repository.
  • Find commit history for a file.
  • Compare two branches or commits conceptually.
  • Explain why a README matters to a public or internal project.
  • Recognize when a repository should include contribution or security guidance.
  • Explain the difference between a tag and a release at a high level.

Git command and workflow recognition

The GH-900 exam is not a deep Git administration exam, but you should recognize common commands and know what they mean in a GitHub workflow.

Common command readiness

CommandWhat it doesCommon exam cue
git cloneCopies a remote repository locally“Start working on an existing GitHub repository”
git statusShows working tree and staging state“Check what changed before committing”
git branchLists or creates branches“See available development lines”
git switch / git checkoutChanges branches“Move to a feature branch”
git addStages changes“Prepare files for a commit”
git commitRecords staged changes“Create a snapshot with a message”
git pushSends commits to a remote“Publish local commits to GitHub”
git pullFetches and integrates remote changes“Update local branch from GitHub”
git fetchDownloads remote changes without integrating“See remote updates before merging”
git mergeCombines branch histories“Bring feature work into another branch”
git logViews commit history“Investigate previous changes”
git diffShows file differences“Review unstaged or branch changes”
git remote -vShows remote URLs“Confirm where push/pull goes”

Basic workflow you should recognize:

git clone https://github.com/example/project.git
cd project
git switch -c feature/update-docs
git status
git add README.md
git commit -m "Update documentation"
git push origin feature/update-docs

Ready check:

  • I know which commands affect only my local repository.
  • I know which commands communicate with GitHub.
  • I can explain why changes are staged before committing.
  • I can explain why a branch is created before starting work.
  • I can recognize that pushing a branch often precedes opening a pull request.

GitHub Flow readiness

GitHub Flow is a common collaboration model built around short-lived branches and pull requests.

    flowchart LR
	    A[Create or choose an issue] --> B[Create a branch]
	    B --> C[Make commits]
	    C --> D[Push branch to GitHub]
	    D --> E[Open pull request]
	    E --> F[Review and discuss]
	    F --> G[Checks pass]
	    G --> H[Merge]
	    H --> I[Delete branch when appropriate]

GitHub Flow checklist

  • I can explain why work should be done on a branch instead of directly on the default branch.
  • I can describe how commits become part of a pull request.
  • I can identify who reviews a pull request and where comments appear.
  • I can explain the role of automated checks in a pull request.
  • I can describe what “merge” means in the context of a pull request.
  • I can recognize when a pull request should not be merged yet.
  • I can explain how branch protection or repository rules can enforce review and quality gates conceptually.

Pull request readiness table

Pull request elementWhat to know
Title and descriptionCommunicate purpose, context, and testing notes
Changed filesShows the diff being proposed
Review commentsFeedback on lines or the overall PR
Requested reviewersPeople or teams asked to review
AssigneesPeople responsible for the work
LabelsCategorize type, priority, area, or status
Linked issuesConnect PRs to tracked work
ChecksAutomation results such as tests, builds, or scans
Merge optionsDifferent ways to integrate changes, depending on repository settings

Scenario cues:

If the scenario says…Think about…
“A teammate wants feedback before merging”Pull request review
“A change should not merge until tests pass”Required checks / branch protection concepts
“A PR fixes a tracked bug”Link the PR to the issue
“A reviewer left comments on specific lines”PR review comments
“Two branches changed the same lines”Merge conflict
“Only approved code should enter the default branch”Review requirements and branch rules

Issues, discussions, and planning

Issue management checklist

  • I can describe what an issue is used for.
  • I can distinguish issues from pull requests.
  • I can use labels to categorize work.
  • I can use assignees to indicate ownership.
  • I can use milestones to group work toward a target.
  • I can explain how issue templates improve consistency.
  • I can recognize when an issue should be closed, linked, transferred, or converted into actionable work.
FeatureBest used for
IssueBug, task, feature request, tracked work item
DiscussionOpen-ended Q&A, idea sharing, community conversation
Pull requestProposed code, documentation, or configuration change
LabelClassification such as bug, enhancement, documentation, priority
MilestoneGroup of issues/PRs toward a release or goal
ProjectPlanning and tracking across issues and pull requests

GitHub Projects readiness

GitHub Projects can organize issues and pull requests into views for planning and tracking.

Can you do this?

  • Explain why a project is useful when issues alone are not enough.
  • Recognize table, board, and roadmap-style planning concepts.
  • Understand that project fields can track status, priority, iteration, owner, or custom metadata.
  • Distinguish a project view from the underlying issue or pull request.
  • Understand that automation can help move or update items based on workflow events.

Scenario cues:

NeedLikely GitHub feature
Track bugs and feature requestsIssues
Ask the community a broad questionDiscussions
Group work for a releaseMilestone
Visualize status across many issuesGitHub Projects
Propose a code changePull request
Standardize bug reportsIssue template

Markdown and documentation artifacts

GitHub uses Markdown heavily in repositories, issues, pull requests, discussions, and documentation.

Markdown skills to verify

  • Headings using #, ##, and ###
  • Bulleted and numbered lists
  • Links and images
  • Code blocks and inline code
  • Tables
  • Task lists with checkboxes
  • Mentions of users or teams
  • References to issues or pull requests
  • Basic formatting such as bold and italic text

Example recognition:

## Setup

1. Clone the repository.
2. Install dependencies.
3. Run the tests.

- [ ] Update README
- [ ] Open pull request
- [ ] Request review

Repository documentation files

FilePurpose
README.mdProject overview, usage, setup, and entry point
CONTRIBUTING.mdHow contributors should participate
CODE_OF_CONDUCT.mdCommunity behavior expectations
SECURITY.mdHow to report vulnerabilities
LICENSELegal terms for reuse
.gitignoreFiles and folders Git should not track
Issue templatesStandardize incoming issue details
Pull request templateStandardize PR descriptions and review context

Ready check:

  • I can identify which documentation file solves a given collaboration problem.
  • I understand why public repositories often need clear community guidance.
  • I can read a Markdown checklist and know how it appears on GitHub.
  • I can explain why secrets, generated files, and local environment files are often excluded with .gitignore.

Identity, access, and permissions

Authentication and access concepts

ConceptWhat to understand
Username/passwordBasic account sign-in concept, strengthened with additional protections
Two-factor authenticationAdds a second verification factor to account access
SSH keyUsed to authenticate Git operations over SSH
Personal access tokenToken-based authentication for tools, scripts, or Git operations
Fine-scoped accessPrinciple of granting only the access needed
SecretSensitive value used by automation and integrations
OrganizationShared administrative space for teams and repositories
TeamGroup used to manage access and collaboration
Repository visibilityControls whether a repository is public, private, or otherwise restricted based on available options

Can you do this?

  • Explain why 2FA reduces account takeover risk.
  • Recognize when an SSH key is used for Git authentication.
  • Recognize when a token may be needed instead of a password.
  • Explain why tokens should be limited, rotated, and protected.
  • Identify that secrets should not be committed to a repository.
  • Explain why team-based access is easier to manage than user-by-user access.
  • Distinguish repository-level access from organization-level administration.

Permissions and administration scenario checks

ScenarioBest answer direction
A contractor needs temporary access to one repositoryGrant limited repository access; avoid broad organization privileges
A team owns multiple related repositoriesUse teams or group-based permissions
Sensitive production code should not be publicReview repository visibility and access controls
Contributors should not push directly to the default branchUse branch rules or pull request review requirements conceptually
A user leaves the organizationRemove or update account access and tokens where applicable
Automation needs a secret valueStore it as a GitHub secret, not in code
Reviewers must approve changes before mergeConfigure review requirements conceptually

Repository security readiness

The exam may test basic awareness of GitHub security features and secure collaboration practices. Focus on what each feature is for, not deep configuration details.

Security areaWhat to know
Dependabot conceptsHelps identify dependency updates and vulnerabilities
Secret scanning conceptsHelps detect committed secrets or credentials
Code scanning conceptsHelps identify potential vulnerabilities in code
Security advisoriesCoordinate vulnerability information and remediation
Branch protection / repository rulesHelp enforce review, checks, and safe merging
Least privilegeGive users and tools only the access required
Audit and activity visibilityHelps administrators investigate changes and access
Signed commits conceptProvides stronger assurance about commit origin when used

Can you do this?

  • Identify why committing credentials is dangerous.
  • Explain why dependency updates matter for security.
  • Recognize that security alerts need triage, not just acknowledgment.
  • Explain why automated checks can block risky changes before merge.
  • Distinguish code review from automated security scanning.
  • Recognize that repository visibility is not the same as secure code.
  • Explain why secrets should be stored in protected configuration areas for automation.

Common traps:

TrapCorrect understanding
“Private repository means no security review is needed”Private code still needs dependency, secret, and access controls
“A token is safe if it is in a private repo”Tokens should not be committed anywhere
“Anyone who can read code should be able to administer the repository”Administration should be limited
“Security tools fix every issue automatically”Tools detect and assist; humans still review and remediate
“A passing build means the code is secure”Build success and security assurance are different

GitHub Actions basics

GitHub Actions provides automation for workflows such as CI, testing, publishing, issue triage, and deployment support.

Actions concepts checklist

  • I can explain what a workflow is.
  • I know workflows are defined with YAML files in a repository.
  • I can explain that events trigger workflows.
  • I can identify jobs and steps in a workflow.
  • I can explain that actions are reusable units of workflow logic.
  • I know runners execute workflow jobs.
  • I understand secrets can be used by workflows without hardcoding sensitive values.
  • I can distinguish workflow artifacts from source files.
  • I can recognize a failed workflow check on a pull request.

Example workflow recognition:

name: Basic CI

on:
  pull_request:
  push:

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Run tests
        run: echo "Run project tests here"

You do not need to memorize every YAML option for a foundations-level checklist, but you should be able to identify the major parts:

YAML partMeaning
nameWorkflow display name
onEvents that trigger the workflow
jobsWork units that run in the workflow
runs-onRunner environment selected for a job
stepsOrdered commands or actions
usesCalls a reusable action
runRuns a shell command
Secrets referenceUses stored sensitive values instead of hardcoded credentials

Scenario cues:

ScenarioGitHub Actions concept
Run tests when a PR is openedWorkflow triggered by pull request
Build when code is pushedWorkflow triggered by push
Prevent merge when tests failRequired checks / branch rule concept
Use a cloud credential in automationRepository or organization secret
Save build outputArtifact
Reuse standard setup logicMarketplace or reusable action

Developer productivity tools

Tool selection checklist

Tool or featureWhat it helps with
GitHub web interfaceBrowse code, review PRs, manage issues, edit simple files
GitHub DesktopGUI-based Git and GitHub workflow
GitHub CLICommand-line GitHub operations such as PRs and issues
CodespacesCloud-based development environment tied to a repository
Web editorQuick in-browser file edits
GitHub Copilot conceptsAI-assisted coding and productivity support
GitHub MarketplaceFind actions, apps, and integrations
GitHub PagesPublish static site content from a repository, when configured

Can you do this?

  • Choose GitHub Desktop for a user who prefers a graphical Git workflow.
  • Choose GitHub CLI for terminal-based GitHub operations.
  • Recognize Codespaces as a ready-to-use development environment scenario.
  • Recognize the web editor as useful for small edits.
  • Explain that Copilot can suggest code but does not replace review, testing, or security validation.
  • Identify GitHub Marketplace as a source of apps and reusable actions.

Open source and community collaboration

Contribution workflow readiness

A common open source contribution flow looks like this:

  1. Find a repository and read its README and contribution guidance.
  2. Fork the repository if direct branch access is not available.
  3. Clone your fork.
  4. Create a branch.
  5. Make commits.
  6. Push to your fork.
  7. Open a pull request to the original repository.
  8. Respond to review feedback.
  9. Maintainers decide whether and how to merge.

Can you do this?

  • Explain why external contributors often fork repositories.
  • Identify the upstream repository versus the contributor’s fork.
  • Explain how maintainers review and discuss proposed changes.
  • Recognize why a code of conduct matters in community projects.
  • Recognize why a license matters before reuse.
  • Explain how issue templates and contribution guides reduce maintainer burden.
Community artifactExam-ready meaning
LicenseDefines allowed use, modification, and distribution
Code of conductSets behavior expectations
Contributing guideExplains how to submit useful contributions
Security policyExplains how to report vulnerabilities responsibly
READMEHelps users and contributors understand the project
DiscussionsSupports community conversation outside specific tracked issues

Integrations, APIs, and ecosystem concepts

You should know that GitHub is extensible and can connect to other tools.

Integration conceptWhat to understand
GitHub AppsIntegrations with controlled permissions
OAuth AppsApps that act with user authorization concepts
WebhooksEvent notifications sent to external systems
REST APIProgrammatic access to GitHub resources
GraphQL APIQuery-based programmatic access to GitHub data
GitHub CLICommand-line interface for GitHub tasks
GitHub PackagesPackage hosting associated with GitHub workflows
MarketplaceDiscover apps and actions

Scenario cues:

NeedLikely concept
Notify an external service when a PR opensWebhook
Script repository managementAPI or GitHub CLI
Install a reusable CI stepMarketplace action
Publish packages near source codeGitHub Packages
Connect a third-party planning or security toolGitHub App or integration
Query specific repository metadata programmaticallyREST or GraphQL API

Troubleshooting and decision-point checks

Common symptoms and likely causes

SymptomLikely area to check
Push is rejectedPermissions, branch protection, authentication, remote branch state
Pull request cannot mergeFailed checks, required review, merge conflict, branch rule
Workflow did not runTrigger event, workflow file location, YAML syntax, repository settings
Secret appears in repository historySecret exposure; rotate secret and remove/mitigate exposure
User cannot access repositoryOrganization membership, team membership, repository permission, SSO/access policy concepts
Local branch is behind remoteFetch or pull remote changes
Merge conflict appearsSame lines or files changed in competing branches
Issue lacks enough detailUse templates or ask for reproduction/context
Reviewer cannot approvePermission or reviewer assignment issue
Automation cannot access credentialSecret configuration or permission scope

Decision prompts

Ask yourself these questions during scenario practice:

  • Is the problem about source control, collaboration, automation, security, or administration?
  • Is the actor a repository contributor, maintainer, organization owner, reviewer, or external user?
  • Does the scenario require a Git feature or a GitHub platform feature?
  • Is the change local only, or has it been pushed to GitHub?
  • Should the person create a branch, fork the repository, or request access?
  • Should the work be tracked as an issue, discussion, project item, or pull request?
  • Is the goal to prevent a risky change, detect a problem, or respond after exposure?
  • Does the scenario require human review, automated checks, or both?
  • Is a secret, token, or key being handled safely?
  • Is the proposed permission broader than necessary?

High-value “Can you do this?” checklist

Use this as a final readiness drill.

Fundamentals

  • Define Git.
  • Define GitHub.
  • Explain repository, branch, commit, clone, fork, and remote.
  • Describe how local changes become visible on GitHub.
  • Explain why version history is useful.
  • Identify the purpose of the default branch.

Collaboration

  • Open a pull request conceptually from a feature branch.
  • Explain what reviewers do in a pull request.
  • Identify where automated checks appear.
  • Explain when a merge conflict must be resolved.
  • Link a pull request to an issue conceptually.
  • Choose issues, discussions, projects, or milestones for a scenario.

Security and permissions

  • Explain least privilege.
  • Identify why 2FA is important.
  • Explain the purpose of SSH keys and tokens.
  • Recognize why secrets should not be committed.
  • Match Dependabot, secret scanning, and code scanning concepts to scenarios.
  • Explain how teams help manage access.
  • Recognize when branch protection or repository rules are appropriate.

Automation

  • Identify the parts of a GitHub Actions workflow.
  • Explain what triggers a workflow.
  • Distinguish jobs from steps.
  • Explain what a runner does.
  • Recognize when to use secrets in workflows.
  • Interpret a failed check as a merge readiness signal.

Documentation and community

  • Identify the purpose of README, LICENSE, CONTRIBUTING, SECURITY, and CODE_OF_CONDUCT files.
  • Read and write basic Markdown.
  • Explain a fork-based contribution workflow.
  • Recognize the role of maintainers in open source.
  • Explain why issue and PR templates improve collaboration.

Tools and ecosystem

  • Choose between GitHub web UI, GitHub Desktop, GitHub CLI, and Codespaces.
  • Explain GitHub Marketplace at a high level.
  • Recognize webhooks and APIs as integration mechanisms.
  • Explain GitHub Pages and Packages at a basic use-case level.
  • Describe Copilot as an assistant that still requires review and validation.

Common weak areas and traps

Weak areaWhat to fix before exam day
Confusing Git with GitHubPractice explaining local version control versus hosted collaboration
Confusing fork with branchFork copies a repository; branch is a line of development within a repository
Thinking a PR is only for codePRs can change documentation, configuration, workflows, and other files
Treating issues as the same as discussionsIssues track actionable work; discussions support broader conversation
Ignoring permissions in scenariosAlways identify who needs access and how much access is appropriate
Assuming private means secureSecurity practices still apply to private repositories
Hardcoding secrets in workflowsUse GitHub secrets and appropriate access controls
Not reading PR statusReviews, checks, conflicts, and rules all affect merge readiness
Overlooking repository documentationREADME and community files are often the answer to collaboration problems
Thinking automation replaces reviewCI and scans support review; they do not remove accountability
Forgetting external contributors may forkFork-based flow is common when direct write access is unavailable
Mixing up labels and milestonesLabels categorize; milestones group work toward a target
Confusing GitHub Projects with repositoriesProjects track work; repositories store code and history

Scenario practice matrix

Use this matrix to test whether you can choose the best GitHub feature quickly.

ScenarioBest-fit concept
A team wants every change reviewed before it reaches the default branchPull requests plus branch protection or repository rules conceptually
A contributor outside the organization wants to propose a fixFork, branch, commit, pull request
A maintainer wants consistent bug reportsIssue template
A project lead wants to track work across many issuesGitHub Projects
A team wants tests to run on every pull requestGitHub Actions workflow
A build must not merge if tests failRequired checks conceptually
A password was accidentally committedSecret exposure response; rotate secret and address repository history
A dependency has a known vulnerabilityDependabot/security alert concepts
A user needs access to several repositoriesTeam-based access
A developer wants a cloud-hosted dev environmentCodespaces
A user wants command-line PR managementGitHub CLI
A site should be published from repository contentGitHub Pages
A package should be hosted alongside the project workflowGitHub Packages
An external system needs notification when issues openWebhook
A script needs to query repository dataGitHub API
Community members need a place for Q&ADiscussions
Contributors need rules for behaviorCode of conduct
Security researchers need reporting instructionsSecurity policy

Final-week checklist

Seven to five days out

  • Review all core terms: repository, branch, commit, pull request, issue, fork, clone, remote.
  • Walk through a complete GitHub Flow scenario without notes.
  • Review the difference between issues, discussions, projects, and milestones.
  • Review common Git commands and what each command changes.
  • Review basic repository documentation files and their purposes.

Four to two days out

  • Practice permission and access scenarios.
  • Review secure handling of tokens, SSH keys, and secrets.
  • Review GitHub Actions vocabulary: workflow, event, job, step, runner, secret, artifact.
  • Review pull request states: review needed, checks failed, conflict, ready to merge.
  • Review open source contribution flow using forks and pull requests.

Final day

  • Re-read the common traps table.
  • Drill scenario cues instead of memorizing isolated definitions.
  • Confirm you can explain each major GitHub feature in one or two sentences.
  • Practice choosing the simplest correct GitHub feature for a scenario.
  • Avoid cramming product limits, dates, or pricing details unless they appear in your official study materials.

Practical next step

Use this checklist to mark weak areas, then practice with scenario-based questions that force you to choose between similar GitHub features: branch vs. fork, issue vs. discussion, project vs. milestone, token vs. SSH key, and review requirement vs. automated check. Focus on explaining why the selected GitHub feature is the best fit for the situation.

Browse Certification Practice Tests by Exam Family