Classic Docs
Docs Navigation

Building pull requests

When monitoring pull requests, Semaphore has two main build workflows:

# Pull requests on the main repository

For direct pushes to the main repository, Semaphore automatically creates a new build, regardless of whether a pull request has been opened or not. In this case, Semaphore does the equivalent of git checkout <branch-name> && git reset --hard <commit-id>.

If your development process includes the pull request number, steps illustrated on this page will help you to fetch it from Github.

# Pull requests originating from forks

For pushes to forked repositories, Semaphore will start a build after a pull request has been opened between the main and the forked repository. The pull request title and number will appear on the Semaphore project page as a link to the full build history. For example, branch name on Semaphore will be similar to

In this case, Semaphore pulls the refs/pulls references from the main repository with git fetch +refs/pull/<pull-request-number>/head: && git reset --hard <commit-id>, a workflow documented by Github.

After a pull request has been closed, Semaphore will no longer run builds for that pull request.

Because of technical limitations of the Bitbucket API, Semaphore does not support building pull requests for projects that are hosted on Bitbucket.

Semaphore Docs are open source — Edit on GitHub


Occasional lightweight product and blog updates. Unsubscribe at any time.

2009-2020 © Rendered Text. All rights reserved. Terms of Service, Privacy policy, Security.