Working with Release Branches

Screenshotbot can track multiple branches in your Git repository. We can use this to track screenshots on release branches and on long-running feature branches.

Screenshotbot expects a main branch (historically called main or master). We expect release branches to be forked from the main branch.

Differences from feature branches

A normal feature branch is typically associated with a Pull Request. On a feature branch, when screenshots change we send a notification as a build status, informing the author of what the changes are. It would then be the authors responsibility of accepting the changes, which would turn the build green again.

In contrast, a release branch does not have an associated author. When a change happens on a release branch, we do not require a review, we just send notifications (typically on Slack or Email), notifying subscribers that the screenshots have changed on the branch.

Forking a new release branch

For the first build of the release branch, we currently send a notification saying N screenshots added. Subsequent commits on the release branch will properly compare against the previous commit.

In a future release, we'll update this logic so that a new release branch will compare screenshots against the main branch.

Setting up a feature branch

If you're using the Screenshotbot CLI, you can pass an argument such as:

      --release-branch-regex "release/.*"

This will automatically detect any branches starting with release and treat it as a release branch.

If you're using the Gradle plugin you can configure it like so:

       screenshotbot {
         ...
         extraArgs ["--release-branch-regex", "release/.*"] 
       }

Ready to get started?

Sign up or contact us.