Safeguard
Compliance•

Change management evidence from pull requests: what to show

Pull requests can serve as change management evidence if they show review, approval, tests and a link to deployment. How to set that up and sample it.

Safeguard Security Team
3 min read

For many teams, the pull request is the change record. It can serve as audit evidence if it shows who proposed the change, who reviewed and approved it, what tests ran, and a link to the deployment. Branch protection makes that trail hard to skip.

What the auditor wants to see

For a sample of production changes, the auditor asks: was the change authorised, tested and approved by someone other than the author, and can you tie the approved code to what went live?

A pull request gives you most of this in one place: author, reviewers, approval timestamps, status checks and the merge commit.

Settings that create the trail

Turn these on for production branches:

  • Required reviews before merge, with at least one reviewer who is not the author.
  • Required status checks, such as tests and security scans.
  • No direct pushes, with the same rules for admins where you can.
  • Dismiss stale approvals when new commits arrive.

Export or record the settings regularly so you can show they were on across the whole period, not just today.

Tie the code to the release

Approved code is not enough if the deployed build differs. Link the merge commit to the pipeline run and the release. Many teams do this by tagging builds with the commit ID. The auditor should be able to follow one change from request to production.

Handle the exceptions honestly

Emergency fixes happen. Define in your policy how an urgent change is made, who approves it and how it is reviewed afterwards. Then keep the after the fact review record. An emergency path that exists in practice but not in policy becomes a finding.

Also expect small changes that bypass the flow, such as configuration edits in a console. If those can touch production, they need their own record.

Prepare the population

Before the audit, produce a list of all production changes in the period, from your deployment system rather than from memory. The auditor will pick from that list. Check that it matches the merged pull requests.

Where tooling fits

Safeguard's policies and gates can enforce checks in the pull request, and its compliance and evidence automation can record that those controls were active. Pair that with your own review discipline.

A last check before fieldwork: sample a handful of merged pull requests yourself. Confirm each had an independent approval, passing checks and a traceable deployment. If two or three fail, look for a pattern, such as a repository missing branch protection or a bot account that merges without review. Fixing a pattern before the audit is far cheaper than explaining it afterwards.

Quick check

Is a pull request enough on its own?

It covers review and approval well. You also need a link to deployment and a defined path for emergency changes.

Do config changes in a cloud console count as changes?

If they affect production, yes. Record them through infrastructure as code or a ticket trail.

Last reviewed: 19 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.