Protected branches ensure that collaborators on a repository cannot make irrevocable changes to branches. Required status checks ensure that all required CI tests are passing before collaborators can make changes to a protected branch. Branches within repositories that belong to organizations can be configured so that only certain users or teams can push to the branch.
Protected branches block several features of Git on a branch that a repository administrator chooses to protect. A protected branch:
- Can't be force pushed
- Can't be deleted
- Can't have changes merged into it until required status checks pass
Organization owners and users with admin permissions for a repository are always able to push to a protected branch. For more information, see "Configuring protected branches and required status checks."