Skip to main content
Skip table of contents

About Ship/Show/Ask PR workflow

Ship/Show/Ask is a fairly recent strategy to improve the workflow of your Pull Requests.

Its goal is to provide the advantages of having pull requests, while at the same time keeping a fast pace in producing new features. It does it by partitioning your pull requests into three categories : Ship, Show and Ask.

This strategy differs from more classical PR workflows by automating the management of trivial or small pull requests. This, in turn, gives more room to carefully handle complex changes in more interesting pull requests.

The DevSensei app will help you apply the Ship/Show/Ask workflow to your pull requests, by guiding you through the decision to chose any of the three categories.

Ship Pull Requests

You will use Ship pull requests when you make small, barely noticeable changes that don’t require people to review, nor even to be aware of. Such small changes could in theory be pushed directly to the target branch, but for external reasons (e.g., internal policy, CI pipeline), you still want to keep it as a record pull request.

Illustration of Ship workflow

Examples:

  • Fixing a typo or spelling mistake

  • Increasing a dependency’s minor version

  • A bugfix you already discussed with the team or paired programmed on

Show Pull Requests

Choose Show pull request when you want to show what has been done, but otherwise you would like it to be merged automatically. You still want people to be notified of the change (for example so that they can review later on) but you don’t expect the need for deep discussions.

Illustration of Show workflow

Examples:

  • Completing a well defined issue/ticket

  • a local refactoring you want people to be aware of (e.g., renaming a function or changing a small implementation detail)

  • added test cases

Ask Pull Requests

You will typically opt in for an Ask pull request when you want feedback and discussions on the changes you made. You only want to merge these changes after there was enough time for discussion, reviewing changes, and decide that it is fully ready. Ask pull requests correspond to the classical way of working with pull requests.

Illustration of Ask workflow

Examples:

  • Adding a new feature

  • Changing how a feature work

  • Major refactoring

You can read more about Ship/Show/Ask pattern in Martin Fowlers’ blog post.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.