SaveMyCert
Log in
5 of 5 free questions left today·for 30 a day
GH-900 practice

Free GH-900 practice questions

Drill exam-realistic GitHub Foundations questions by domain, with an explanation on every option — not just the right one. 5 fully worked examples are further down this page, answers included.

Question bank
242
across 7 domains
Free, no account
5/day
a free account allows 30 a day
Real exam
60 Qs
100 min · pass 700 / 1000
Explanations
Every option
right and wrong

Build a practice session

5 free questions left today.

Domains

How many?

Mode

Ready when you are

10 fresh questions drawn across all domains, in Learn mode.

Focused review

Every question you answer incorrectly, and every question you flag while practising, is saved here automatically. Finish a session and you can come back to re-drill just those.

5 sample GH-900 questions, fully explained

Real questions from the GH-900 bank, with the answer key and the reasoning behind every option. Read them, then go back up the page and try the rest.

Question 1Understand Git and GitHub basics

A team keeps its scripts in a shared network folder. Files are regularly overwritten, and nobody can tell who changed a file or for what reason. Which capability of a version control system addresses this most directly?

Choose one.

  • a
    Compressing the stored files so that the shared folder uses much less disk space

    Git does compress what it stores, but saving disk space does not tell anyone who changed a file or why.

  • b
    Recording each change together with its author, its time and a descriptive message Correct

    Version control stores every change as a recorded entry with who made it, when, and a message saying why. That answers exactly the question the team cannot answer today.

  • c
    Scanning each saved file for passwords or keys before the change is accepted

    Secret scanning is a real GitHub security feature, but it detects leaked credentials; it does not record authorship or the reason for a change.

  • d
    Running the scripts on a schedule or each time a file in the shared folder is saved

    Running code on events or schedules is automation (for example GitHub Actions), not version control. It leaves the who-and-why question unanswered.

The concept

Version control keeps a history of changes in which every change records its author, its timestamp and a message describing it.

Why that’s the answer

The team's problem is missing accountability: overwritten files and no record of who changed what. A version control system such as Git records each change as a commit with an author, a date and a message, so the history answers who, what, when and why. Compression, secret scanning and scheduled automation are all real capabilities, but none of them creates a record of changes.

How to reason it out
  1. Identify the gap: no record of who changed a file or why.
  2. Recall what version control stores for every change: author, time, message and the change itself.
  3. Reject capabilities that solve a different problem (storage, security, automation).
  4. Choose the recorded history with authorship and messages.

Exam tip: Version control answers who changed what, when and why: every change carries an author, a time and a message.

Git vs GitHub: Version Control Fundamentals for GitHub Foundations (GH-900) — the lesson that teaches this.

Question 2Work with GitHub repositories

A maintainer wants people who open a repository's main page to see straight away what the project does, how to install it and how to start using it. Which file should hold this information?

Choose one.

  • a
    A CONTRIBUTING.md file in the repository root

    CONTRIBUTING.md tells people how to contribute (coding style, tests, pull request process). GitHub links it when someone opens an issue or pull request; it is not the project's front page.

  • b
    A SUPPORT.md file in the repository root

    SUPPORT.md points people to help resources (forums, chat, paid support). It is not rendered as the project's introduction on the main page.

  • c
    A README.md file in the repository root Correct

    Correct. GitHub renders the README automatically on the repository's main page, so it is where you explain what the project does, how to install it and how to use it.

  • d
    A CODEOWNERS file in the .github folder

    CODEOWNERS maps file paths to the people or teams responsible for reviewing them. It is never shown as a project description.

The concept

The README is the repository's front page.

Why that’s the answer

GitHub automatically displays a README found in the .github folder, the root or the docs folder on the repository's main page. That makes it the place for the project's purpose, installation and usage. CONTRIBUTING.md covers how to contribute, SUPPORT.md where to get help, and CODEOWNERS who reviews which paths.

How to reason it out
  1. Identify what the visitor needs: an overview on the main page.
  2. Recall which file GitHub renders automatically on the main page.
  3. Separate it from files that serve contributors, support seekers or reviewers.
  4. Choose the README.

Exam tip: README = what the project is and how to use it, shown on the main page.

GitHub Repository Management: README, CODEOWNERS, Templates and Insights (GH-900) — the lesson that teaches this.

Question 3Collaborate using GitHub

An open-source maintainer receives many "how do I configure this?" questions filed as issues, and they bury real bug reports. The maintainer wants a place where helpers can answer and the best reply can be marked for future readers. What should the maintainer set up?

Choose one.

  • a
    An issue label named question plus a saved filter that hides it

    Labelled issues still sit in the issue tracker beside bugs, and issues have no way to mark one comment as the accepted answer.

  • b
    A discussions category that uses the question and answer format Correct

    Correct. Discussions are for open-ended conversation, and a question-and-answer category lets a comment be marked as the answer so later readers find it quickly.

  • c
    A repository wiki page where users append questions and answers

    A wiki is for maintained documentation. A shared page of appended questions has no threading, notifications per question, or marked answers.

  • d
    A public gist that collects the questions for helpers to answer

    Gists share snippets or files. They have a flat comment stream and nothing that marks an answer or organises questions by topic.

The concept

GitHub Discussions holds open-ended conversation such as questions, ideas and announcements, separately from the issue tracker.

Why that’s the answer

Questions about usage are not actionable work items, so they belong in Discussions rather than Issues. A category in the question-and-answer format adds the ability to mark a comment as the answer, which is exactly the 'best reply for future readers' requirement. A label keeps the questions in the tracker; a wiki page or gist has no answer-marking or per-question threads.

How to reason it out
  1. Separate actionable work (bugs) from open-ended questions.
  2. Questions go to Discussions, not Issues.
  3. Pick the category format that can mark an answer: question and answer.
  4. Reject options that keep questions in the tracker or lack threads.

Exam tip: Bugs and tasks are issues; questions are discussions, and Q&A categories let you mark the answer.

GitHub Collaboration Tools: Issues, Pull Requests, Discussions, Notifications and Pages (GH-900) — the lesson that teaches this.

Question 4Apply modern development practices

A team wants its test suite to run automatically whenever someone opens a pull request, with the result shown on the pull request before anyone merges it. Which GitHub feature provides this?

Choose one.

  • a
    GitHub Pages

    Pages publishes a static website from a repository. It does not run test suites against pull requests.

  • b
    GitHub Codespaces

    Codespaces gives a developer a cloud development environment to work in. It does not run tests on its own when a pull request opens.

  • c
    GitHub Projects

    Projects plans and tracks issues and pull requests on boards and tables. It does not execute any code.

  • d
    GitHub Actions Correct

    Correct. An Actions workflow can be triggered by pull request events, run the tests on a runner and report the result as a check on the pull request.

The concept

GitHub Actions runs automated workflows in response to repository events such as a pull request being opened.

Why that’s the answer

The requirement is automation triggered by an event (a pull request) that runs code (the tests) and reports back. That is exactly what an Actions workflow does: the pull request event triggers it, a runner executes the tests, and the result appears on the pull request. Pages publishes sites, Codespaces is an interactive environment for a person, and Projects only tracks work.

How to reason it out
  1. Spot the trigger: a pull request is opened.
  2. Spot the action: run code (tests) without a person starting it.
  3. Event-driven automation that runs code is GitHub Actions.
  4. Reject features that host sites, environments or plans.

Exam tip: Something should run automatically when something happens in the repository: that is GitHub Actions.

GitHub Actions, Copilot, Codespaces and github.dev: Automation and AI Tools (GH-900) — the lesson that teaches this.

Question 5Manage projects with GitHub

A product manager needs one place to plan work drawn from issues and pull requests in four repositories, and to switch between a spreadsheet-style list, a kanban board and a timeline. What should the manager create?

Choose one.

  • a
    An organization project with items from each repo Correct

    Correct. A project is an adaptable table, board and roadmap that can hold issues and pull requests from many repositories, owned at the user or organization level.

  • b
    A milestone in the busiest of the four repositories

    A milestone belongs to one repository, so it cannot hold the other three repositories' work, and it has no board or timeline views.

  • c
    An organization discussion with a pinned planning post

    Discussions hold conversation. They do not track issues and pull requests as items with fields, layouts or status.

  • d
    A shared label added in each of the four repositories

    Labels are created per repository and only tag items; they give no single planning surface and no table, board or timeline views.

The concept

GitHub Projects is a planning tool built from issues, pull requests and draft issues, viewed as a table, board or roadmap.

Why that’s the answer

The requirement combines two things: work from several repositories in one place, and three ways of looking at it. A project, owned by a user or an organization, can contain issues and pull requests from many repositories and offers table, board and roadmap layouts. Milestones and labels are both scoped to a single repository, and a discussion is a conversation, not a tracker.

How to reason it out
  1. Note that the work spans several repositories.
  2. Note the three views: list, kanban board and timeline.
  3. Recall that projects offer table, board and roadmap layouts across repositories.
  4. Reject tools scoped to one repository or meant for conversation.

Exam tip: Cross-repository planning with table, board and roadmap views is what GitHub Projects is for.

GitHub Projects, Labels, Milestones and Insights: Project Tracking (GH-900) — the lesson that teaches this.

The GH-900 question bank, by domain

The bank is built to the exam's own weighting, so the practice you get reflects the marks that are actually on offer — not whichever domain was easiest to write questions for.

Published GH-900 practice questions per exam domain
DomainExam weightTopicsQuestions
Understand Git and GitHub basics28%268
Work with GitHub repositories14%134
Collaborate using GitHub14%134
Apply modern development practices14%134
Manage projects with GitHub8%119
Understand privacy, security, and administration14%134
Explore the GitHub community8%119
Total100%8242

Practise GH-900 one domain at a time

How GH-900 questions are worded

Most GH-900 questions are not asking whether you can recall a definition. They describe a situation and ask which option satisfies it — so the skill being tested is reading the requirement precisely and eliminating options that fail it.

Single-response vs multiple-response

A single-response question has exactly one right answer. A multiple-response question tells you how many to pick ("Choose TWO") and there is no partial credit — getting one of the two right scores nothing. Read that instruction before you read the options.

Read the last line first

The final sentence is the actual question; everything before it is scenario. Read it first, then read the scenario knowing what you are looking for. It stops you from building an answer in your head that the question never asked for.

Hunt for the qualifier

Most scenarios turn on one word — MOST cost-effective, LEAST operational overhead, with the LEAST latency, without changing application code. Two options are frequently both technically correct, and the qualifier is the only thing separating them.

Eliminate, then choose

Distractors are almost always real GitHub services doing a real job — just not this job. Rule out the ones that break a stated constraint before you compare what's left. On a question you truly don't know, eliminating two options turns a guess into a coin flip.

Practise GH-900 from your browser

The SaveMyCert Chrome extension opens a daily drill of 5 GH-900 questions in the side panel, with the full explanation behind every answer. No account needed.

Get the Chrome extension (opens in a new tab)

Beyond GH-900 practice

GH-900 practice questions: your questions

Yes. You can answer 5 questions a day with no account at all, and a free account raises that to 30 a day across the full 242-question GH-900 bank, with an explanation on every option. Pro removes the daily cap entirely.

Source

Exam structure, domain weights and scoring on this page come from the official GH-900 exam guide.