Gated commit (original) (raw)

A gated commit, gated check-in or pre-tested commitis a software integration pattern that reduces the chances for breaking a build (and often its associated tests) by committing changes into the main branch of version control. This pattern can be supported by a continuous integration (CI) server. As an alternative this pattern can be realized using different branches in version control. For instance, GitHub can force all commits to a branch B to be merge commits from pull requests which have successfully been built on the CI server and are up-to-date (i.e. based or rebased on B).