Draft merge requests

Tier: Free, Premium, Ultimate Offering: GitLab.com, Self-managed, GitLab Dedicated

If a merge request isn’t ready to merge, you can block it from merging until you mark it as ready. Merge requests marked as Draft cannot merge until the Draft flag is removed, even if all other merge criteria are met:

merge is blocked

Mark merge requests as drafts

History
  • Removed all support for the term WIP in GitLab 14.8.
  • /draft quick action as a toggle deprecated in GitLab 15.4.
  • Changed the draft status to use a checkbox in GitLab 15.8.

You can flag a merge request as a draft in several ways:

  • Viewing a merge request: In the upper-right corner of the merge request, select Mark as draft.
  • Creating or editing a merge request: Add [Draft], Draft: or (Draft) to the beginning of the merge request’s title, or select Mark as draft below the Title field.
  • Commenting in an existing merge request: Add the /draft quick action in a comment. To mark a merge request as ready, use /ready.
  • Creating a commit: Add draft:, Draft:, fixup!, or Fixup! to the beginning of a commit message targeting the merge request’s source branch. This method is not a toggle. Adding this text again in a later commit doesn’t mark the merge request as ready.

Mark merge requests as ready

When a merge request is ready to merge, you can remove the Draft flag in several ways:

  • Viewing a merge request: In the upper-right corner of the merge request, select Mark as ready. Users with at least the Developer role can also scroll to the bottom of the merge request description and select Mark as ready.
  • Editing an existing merge request: Remove [Draft], Draft: or (Draft) from the beginning of the title, or clear Mark as draft below the Title field.
  • Commenting in an existing merge request: Add the /ready quick action in a comment in the merge request.

When you mark a merge request as ready, merge request participants and watchers are notified.

Include or exclude drafts when searching

When you view or search in your project’s merge requests list, to include or exclude draft merge requests:

  1. On the left sidebar, select Search or go to and find your project.
  2. Select Code > Merge requests.
  3. To filter by merge request status, select Open, Merged, Closed, or All in the navigation bar.
  4. Select the search box to display a list of filters and select Draft, or enter the word draft.
  5. Select =.
  6. Select Yes to include drafts, or No to exclude, and press Return to update the list of merge requests:

    Filter draft merge requests

Pipelines for drafts

Draft merge requests run the same pipelines as merge requests marked as ready.

In GitLab 15.0 and earlier, you must mark the merge request as ready if you want to run merged results pipelines.