Draft merge requests

If a merge request is not yet ready to be merged, perhaps due to continued development or open threads, you can prevent it from being accepted before it’s ready by flagging it as a Draft. This disables the Merge button, preventing it from being merged. It stays disabled until the Draft flag has been removed.

Blocked Merge Button

When pipelines for merged results is enabled, draft merge requests run merge request pipelines only.

To run pipelines for merged results, you must remove the draft status.

Adding the “Draft” flag to a merge request

Version history
  • Introduced in GitLab 13.2, Work-In-Progress (WIP) merge requests were renamed to Draft. Support for using WIP is scheduled for removal in GitLab 14.0.
  • Mark as draft and Mark as ready buttons introduced in GitLab 13.5.

There are several ways to flag a merge request as a Draft:

  • Click the Mark as draft button on the top-right corner of the merge request’s page.
  • Add [Draft], Draft: or (Draft) to the start of the merge request’s title. Clicking on Start the title with Draft:, under the title box, when editing the merge request’s description has the same effect.
  • Deprecated Add [WIP] or WIP: to the start of the merge request’s title. WIP still works but was deprecated in favor of Draft. It is scheduled for removal in the next major version (GitLab 14.0).
  • Add the /draft (or /wip) quick action in a comment in the merge request. This is a toggle, and can be repeated to change the status back. Note that any other text in the comment is discarded.
  • Add draft:, Draft:, fixup!, or Fixup! to the beginning of a commit message targeting the merge request’s source branch. This is not a toggle, and doing it again in another commit has no effect.

Removing the “Draft” flag from a merge request

Similar to above, when a Merge Request is ready to be merged, you can remove the Draft flag in several ways:

  • Click the Mark as ready button on the top-right corner of the merge request’s page.
  • Remove [Draft], Draft: or (Draft) from the start of the merge request’s title. Clicking on Remove the Draft: prefix from the title, under the title box, when editing the merge request’s description, has the same effect.
  • Add the /draft (or /wip) quick action in a comment in the merge request. This is a toggle, and can be repeated to change the status back. Note that any other text in the comment is discarded.
  • Click on the Resolve Draft status button near the bottom of the merge request description, next to the Merge button (see image above). Must have at least Developer level permissions on the project for the button to be visible.

Including/excluding WIP merge requests when searching

When viewing/searching the merge requests list, you can choose to include or exclude WIP merge requests. Add a WIP filter in the search box, and choose Yes to include, or No to exclude.

Filter WIP MRs