GH-900 Practice Test
GitHub Foundations
GitHub is everywhere in modern development — prove you know it.
Our questions target the GitHub-specific details that trip up candidates: Actions vs Apps, branch protection rulesets, Copilot policies, and community workflows — so the real exam feels straightforward.
Start Free Practice — 40 QuestionsNo credit card required. Upgrade to full 500 questions for $19.99 when ready.
Is this for you?
This is NOT for you if:
GH-900 Exam Details
What to expect on exam day
Questions
60 questions
Duration
60 minutes
Passing Score
700/1000
Exam Cost
$99 USD
Exam Domains Covered
Master all topics tested on the GH-900 exam
Understand Git and GitHub Basics (25-30%)
Work with GitHub Repositories (10-15%)
Collaborate Using GitHub (10-15%)
Apply Modern Development Practices (10-15%)
Manage Projects with GitHub (5-10%)
Understand Privacy, Security, and Administration (10-15%)
Explore the GitHub Community (5-10%)
Test Yourself Right Now
Try 5 real practice questions — no signup needed
5 Free GH-900 Questions
See how ready you are for the GH-900 exam. Each question includes a detailed explanation so you learn as you go.
Sample GH-900 Practice Questions
10 real questions from the free GH-900bank. Pick an answer in your head, then open “Show answer” for the explanation.
1. GitHub offers three repository notification subscription levels. What are they?
- A. Watching (all activity), Participating and @mentions (only when directly involved), and Ignoring (no notifications)
- B. Active (real-time push), Digest (daily email summary), and Muted (weekly digest)
- C. Full (commits and activity), Partial (issues and PRs), and Minimal (security alerts)
- D. Owner (broad activity), Contributor (activity you participate in), and Visitor (no notifications)
Show answer
Correct answer: A
GitHub repository notification subscriptions have three levels: Watching (receive notifications for all activity in the repository), Participating and @mentions (receive notifications only when you comment, are assigned, or are @mentioned - the default), and Ignoring (receive no notifications at all for the repository, even if @mentioned).
2. What is rebasing in Git?
- A. The process of creating a copy of a repository under a different organizational namespace
- B. A process that moves or replays a sequence of commits from one branch onto another, resulting in a linear history
- C. A method to recover deleted branches by replaying their commits from the reflog
- D. The act of resetting the default branch pointer to an older commit in the repository history
Show answer
Correct answer: B
Git rebase moves or "replays" a sequence of commits from one branch onto another, resulting in a clean, linear commit history. Unlike merge (which creates a merge commit), rebase rewrites commit history. It is commonly used to integrate the latest main branch changes into a feature branch, but should be avoided on shared public branches as it rewrites history.
3. What is GitHub Enterprise?
- A. A set of GitHub plans (Enterprise Cloud and Enterprise Server) designed for large organizations needing advanced security, compliance, and administrative controls
- B. A premium subscription for individual developers that provides unlimited private repositories and Actions minutes
- C. A specialized GitHub account type exclusively for open-source project maintainers
- D. An API tier that provides higher rate limits for automated workflows and large-scale integrations
Show answer
Correct answer: A
GitHub Enterprise provides advanced features for large organizations, available as GitHub Enterprise Cloud (hosted by GitHub) and GitHub Enterprise Server (self-hosted on-premises). It includes SAML SSO, audit logs, enterprise managed users, advanced security, and organization-wide policy management.
4. What is GitHub?
- A. A cloud-based platform for hosting Git repositories and enabling team collaboration
- B. A command-line tool for creating and managing Git commits locally
- C. A programming language used to automate Git operations and scripts
- D. A local backup tool for saving copies of source code files
Show answer
Correct answer: A
GitHub is a web-based platform that provides hosting for Git repositories. It adds collaboration features such as pull requests, issues, GitHub Actions, GitHub Projects, and Discussions on top of Git's core version control capabilities.
5. What is the primary purpose of version control?
- A. To track changes to files over time and enable collaboration
- B. To compress and archive large software projects for distribution
- C. To automatically test code for bugs before deployment
- D. To deploy applications to cloud infrastructure
Show answer
Correct answer: A
Version control systems track changes to files over time, allowing teams to collaborate, view history, and revert to previous states. This makes it easier to manage complex projects and recover from mistakes.
Show 5 more questions
6. What is the primary purpose of GitHub Desktop?
- A. A graphical user interface application that allows users to interact with GitHub repositories without using the command line
- B. A browser-based code editor for making quick changes to repository files and committing them directly in the browser environment
- C. A mobile app for reviewing, approving, and commenting on pull requests from iOS and Android devices on the go
- D. A command-line tool that extends the standard Git CLI with additional GitHub-specific authentication and workflow commands
Show answer
Correct answer: A
GitHub Desktop is a free, open-source graphical application that provides a visual interface for common Git and GitHub operations. It allows developers - particularly those who prefer not to use the command line - to clone repositories, create branches, commit changes, and push to GitHub.
7. What is the primary use of Markdown in GitHub?
- A. To write executable scripts that define and automate GitHub Actions workflow triggers and job steps
- B. To define and maintain database schemas and field configurations for GitHub Projects boards
- C. To configure granular access control rules and permissions for organization repositories and teams
- D. To format text in README files, issues, pull requests, discussions, and wiki pages
Show answer
Correct answer: D
Markdown is a lightweight markup language that GitHub renders as formatted HTML. It is used throughout GitHub to add formatting such as headings, bold text, lists, links, and code blocks to README files, issue comments, pull request descriptions, and other content.
8. In GitHub Flow, after a pull request has passed code review and all required status checks have succeeded, what is the recommended next step?
- A. Create a new release branch to preserve the current state of main before merging the feature
- B. Merge the pull request into the main branch and deploy to production
- C. Archive the feature branch so it can be referenced by the team in the future
- D. Re-run the tests from scratch to confirm the code works in isolation
Show answer
Correct answer: B
In GitHub Flow, once a pull request is reviewed and all checks pass, the changes are merged into main. GitHub Flow assumes the main branch is always deployable, so after merging, the changes are typically deployed to production immediately. This supports continuous delivery.
9. How does GitHub recommend authenticating to the GitHub API for automated scripts and workflows?
- A. Using the account owner's primary email and password encoded in a Base64 authorization header
- B. Using the same OAuth credentials that GitHub Desktop uses for desktop application authentication
- C. Using personal access tokens (PATs) or GitHub Apps, which provide scoped, revocable access without exposing account credentials
- D. Using the repository's deploy key to sign API requests via RSA encryption
Show answer
Correct answer: C
GitHub recommends using personal access tokens (PATs) or GitHub Apps for API authentication rather than username/password combinations, which are no longer supported for API access. PATs can be scoped to specific permissions and can have expiration dates. GitHub Apps provide even finer-grained access and are preferred for integrations at scale.
10. What is the purpose of a .gitignore file in a repository?
- A. To list contributors and their email addresses for code attribution and credit purposes throughout the project
- B. To specify files and directories that Git should not track or include in commits
- C. To configure the remote repository URL and authentication credentials
- D. To define the license terms under which the repository's code can be used
Show answer
Correct answer: B
A .gitignore file tells Git which files or directories to ignore and not track. This is useful for excluding files that should not be version-controlled, such as build artifacts, dependency folders (like node_modules), environment files with secrets, and IDE-specific settings.
GH-900 study resources
Why Practice with MSCertQuiz?
Microsoft Learn teaches concepts. We prepare you for the actual exam.
Questions target the GitHub-specific distinctions that catch most candidates off guard
Explanations teach patterns, not just answers — so you handle new questions confidently
Calibrated slightly harder than the real exam, so test day feels easier
Updated for the latest 2026 exam objectives including GitHub Copilot and Actions
Not sure if you're ready for the GH-900 exam?
Take the free GH-900 Readiness Check →What Our Users Say
93% pass rate — Based on users who completed at least 2 practice exams
“I use GitHub every day but still learned things from the practice questions. The GHAS and Actions sections were especially thorough. Scored 850 on my first attempt.”
James R.
GH-900 Certified
“The branch protection and Copilot policy questions caught me off guard in practice — exactly the right preparation. Nothing surprised me on exam day.”
Maya L.
Passed GH-900 first try
“As a project manager who works with developers, GH-900 helped me understand GitHub at a level that makes me much more effective with my team. Clear explanations throughout.”
Chris K.
GH-900 Certified
Choose Your Plan
Start free, upgrade when you're ready to get serious
Free
Good for exploring the platform
- 40 practice questions
- Practice mode only
- Progress tracking
- No exam simulation mode
GH-900 Full Access
Best if your exam is in the next 2-4 weeks
- 500 practice questions
- Practice & Exam modes
- Detailed explanations
- Lifetime access
7-day money-back guarantee
Pro — All Certs
Best if you're planning multiple Microsoft exams
- ALL certifications included
- Unlimited questions
- New certs added free
- Cancel anytime
Save 30% vs buying individually
Your GH-900Exam Won't Wait
Candidates who complete at least 2 full mock exams pass at significantly higher rates than those who only study passively.
Don't risk $99 USD on the real exam without testing yourself first.
Start Free Practice NowNo credit card required • 40 free questions • Upgrade for $19.99 when ready
Official Microsoft Resources
Our practice questions are aligned with official Microsoft exam objectives. We recommend studying with Microsoft Learn first, then using MSCertQuiz to test your readiness.
View Official GH-900 Exam DetailsGH-900 Frequently Asked Questions
Everything you need to know about the GH-900 GitHub Fundamentals certification
How hard is the GH-900 exam?
Is GH-900 worth it in 2026?
Do I need coding experience for GH-900?
How long should I study for GH-900?
What is GitHub Advanced Security (GHAS)?
How is MSCertQuiz different from free GH-900 practice tests?
What topics are on the GH-900 exam?
How much does the GH-900 exam cost?
Also Preparing For
Candidates studying GH-900 often prepare for these certifications next.