2026-10-02 · Q&A guide

Pull Requests: Git Feature or Tool‑Specific?

Pull requests are a workflow concept, not a native Git command. The discussion lives in the tool’s database, not the Git history.

Pull Request Basics

A pull request is a request to merge one branch into another, accompanied by a review discussion. It is a workflow construct, not a low‑level Git operation.

Git’s request‑pull vs Tool PRs

Git ships a "request‑pull" command that generates a patch and a short summary for email. It does not create a review thread or merge policy. In contrast, GitHub, GitLab, Gerrit, Bitbucket Server, and others implement full PR interfaces, including status checks, approvals, and merge strategies.

Where Is the Discussion Stored?

The code changes are in Git commits. Review comments, approvals, and merge decisions are kept in the hosting platform’s database or, in Gerrit’s case, in its own metadata store. They are not part of the Git commit history.

Typical Workflow Example

1. Developer pushes feature branch. 2. Creates PR via web UI. 3. Reviewers comment and approve. 4. Once approved, the platform merges the branch or applies a fast‑forward. The merge commit is recorded in Git, while the review metadata stays in the tool.

Tool‑Specific Enhancements

GitHub adds status checks, GitLab offers merge‑request pipelines, Gerrit enforces code‑review scores, and Bitbucket Server supports pull‑request templates. All extend the basic PR concept but rely on Git for the underlying history.

# Example of git request-pull
# From feature branch to master
# Generates a patch and summary for email
$ git request-pull master origin/feature-branch

Takeaway: Pull requests are workflow abstractions built on top of Git, with review data stored outside the Git repository.

People also ask

Does a PR create a new commit in Git?

Yes, merging a PR typically creates a merge commit or a fast‑forward, but the review comments themselves are not stored in Git.

Can I use Git alone for code review?

You can use git request‑pull or email patches, but you lose the rich review UI and metadata that hosting services provide.

Where are approvals kept?

In the hosting platform’s database; they are not part of the Git commit log.

Inspired by a public discussion on Stack Overflow. This article is an original explanation for learners.

← All posts