> ## Documentation Index
> Fetch the complete documentation index at: https://docs.mergeguide.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Set up the PR gate

> Evaluate every pull request against your policies and report results inline, across all four SCM platforms.

The **PR gate** evaluates each pull request against your policies and posts the
results back to the pull request. When blocking findings exist, the merge is held
until they're resolved — so policy is enforced consistently no matter who (or what)
wrote the code.

MergeGuide supports the PR gate on all four major source-control platforms:

* **GitHub**
* **GitLab**
* **Bitbucket**
* **Azure DevOps**

## How it works

When a pull request is opened or updated, MergeGuide evaluates the changed code
and reports a status on the PR:

1. The change is checked against your active policies.
2. Findings are posted inline on the PR with remediation guidance.
3. A PR status reflects the result. If there are blocking findings, the merge is
   blocked until they're resolved or suppressed with justification.

<Note>
  The specific connection steps differ per platform (app installation, project
  access, and webhook setup). Follow the guide for your SCM:
</Note>

<CardGroup cols={2}>
  <Card title="GitHub" icon="github" href="/integrations/github">
    Connect the GitHub app and enable the PR gate.
  </Card>

  <Card title="GitLab" icon="gitlab" href="/integrations/gitlab">
    Connect GitLab and enable merge-request checks.
  </Card>

  <Card title="Bitbucket" icon="bitbucket" href="/integrations/bitbucket">
    Connect Bitbucket and enable PR checks.
  </Card>

  <Card title="Azure DevOps" icon="microsoft" href="/integrations/azure-devops">
    Connect Azure DevOps and enable PR checks.
  </Card>
</CardGroup>

## Make the gate enforce

Reporting status is only half the value — to *block* merges on blocking findings,
enable branch protection (or its equivalent) on your platform and require the
MergeGuide status to pass. See your platform's integration guide and
[CI/CD patterns](/integrations/ci-cd-patterns).

## Next steps

<CardGroup cols={2}>
  <Card title="Configure thresholds" icon="gauge" href="/configuration/thresholds">
    Decide what severity blocks a merge.
  </Card>

  <Card title="Enforcement layers" icon="layer-group" href="/operation/enforcement-layers">
    How the PR gate fits with earlier checks.
  </Card>
</CardGroup>
