Practise vocabulary for branch protection rules, CODEOWNERS, required status checks, merge queues, and review policies.
0 / 5 completed
1 / 5
A required status check on a protected branch means:
Required status checks enforce quality gates: even if all reviewers approve, the PR cannot merge until the required checks are green. Configured per-branch in GitHub/GitLab. Ensures CI always runs and passes before code enters the protected branch.
2 / 5
CODEOWNERS in a repository means:
CODEOWNERS example: /src/payments/ @payments-team means any PR touching the payments directory automatically requests review from the payments team. Combined with 'Require review from code owners', this enforces that changes to critical paths are reviewed by the right people.
3 / 5
A merge queue in GitHub/GitLab is used to:
Merge queues solve the 'merged but broken' problem: PR A and PR B both pass CI against main, but together they conflict. The merge queue tests each PR against the head-of-queue state (including previously queued PRs) before committing to main — serialising merges safely.
4 / 5
Requiring signed commits on a protected branch means:
Git commit authorship (name/email in commits) is trivially spoofable — anyone can set git config user.email to anyone's email. Signed commits bind the commit to a cryptographic key that only the real author controls, providing non-repudiation.
5 / 5
Dismissing stale approvals on a protected branch means:
Without dismissing stale approvals: reviewer approves PR, author pushes additional changes (possibly introducing bugs or security issues), old approval still counts, PR merges. Dismiss stale approvals: each new push requires fresh approval from CODEOWNERS, ensuring reviewers see all changes.