Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 12 Current »

This page describes the behaviour of the DevSensei Ship/Show/Ask feature in details. Refer to About Ship/Show/Ask PR workflow for description and motivation of Ship/Show/Ask.

(The content of this page only applies if you enabled full Ship/Show/Ask support on your project or repository. Please refer to the Getting started - DC page to enable it.)

Ship/Show/Ask behavior summary

All pull requests are characterized by DevSensei in 5 different categories. The behaviour of these categories is summarized in the table below.

Auto-merge ?

Number of required approvals

Skipping Code Owners merge checks?

No Ship/Show/Ask

No

0

No

Ask>=n

No

n

No

Show

Yes

0

Yes

Show>=n

Yes

n

Yes

Ship

Yes

0

Yes

Note that when you are not using full Ship/Show/Ask support, the Auto merge [Auto] behaviour is equivalent to [Show], except that it does not skip the Code Owners merge checks.

Ask pull requests

When an [Ask>=n] pull request is initiated, it will not be merged automatically. Moreover, a merge check requiring n (>=1) approvals is added to the pull request. This means that in order for the pull request to be successfully merged, it must receive n approvals from designated reviewers or team members.

This type of pull request is useful when changes to the codebase have the potential to have a significant impact or when there is a high level of uncertainty surrounding a particular change.

To initiate an [Ask>=n] pull request, the user must select Manual merge and ask to require a certain number of approvals via the dedicated drop-down.

Show pull requests

You can configure Pull Requests to be merged automatically, optionally requiring a certain number of approvals.

[Show>=n] pull requests will be automatically merged as soon as they receive n approvals. However, Code Owners merge checks will be ignored for such pull request. All other merge checks (such as passing tests, no open tasks, etc.) must still be fulfilled for the pull request to be merged.

[Show] pull requests, on the other hand, will not require any approvals before they can be automatically merged. This feature is useful for small changes that do not require a thorough review. Again, Code Owners merge checks will be ignored but all other merge checks must still be fulfilled before the pull request can be merged.

To initiate a [Show] pull request, the user must select Auto-Merge and don’t require any approvals. To initiate a [Show>=n] pull request, the user must select Auto-Merge and must require a certain number of approvals.

Ship pull requests

[Ship] pull requests are similar to [Show] pull requests, with the difference that they do not add the Code Owners as reviewers anymore. That means that no one will be notified about the pull request. You can still add reviewers manually if desired.

Like [Show] pull requests, [Ship] pull requests will be merged as soon as all other merge checks pass, but they skip Code Owners assignments from Code Owners.

To initiate a [Ship] pull request, the user must select Auto-Merge, they should not require any approvals and they must select Merge without reviewers.

  • No labels